jquery实现股票的各种效果

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <title>动态股票信息</title>
    <link type="text/css" rel="stylesheet" href="css/edit.css">
    <script type="text/javascript" src="jslib/jquery-1.3.2.js"></script>
    <script type="text/javascript" src="jslib/jqueryStock.js"></script>
</head>
<body>
<div id="300001"><a href="JQueryStock.html#">上证指数</a><span></span></div>
<div id="000001"><a href="JQueryStock.html#">浦发银行</a><span></span></div>
<div id="stock">
    <div id="yes">昨收:<span></span></div>
    <div id="tod">今开:<span></span></div>
    <div id="now">当前:<span></span></div>
</div>
</body>
</html>


var obj;
var sid;
$(function() {
    var stockNode = $("#stock").css("border", "1px solid black")
            .width("150px").css("position", "absolute").css("z-index", "99")
            .css("background-color", "blue").css("color", "yellow");
    stockNode.hide();
    var as = $("a");
    as.mouseover(function(event) {
        var aNode = $(this);
        var divNode = aNode.parent();
        sid = divNode.attr("id");
        updatediv();
        //控制弹出框的位置
        /*//1.找到当前链接的位置
        var offset = aNode.offset();
        //2.设置弹出框的位置
        stockNode.css("left", offset.left + "px").css("top", offset.top + aNode.height() + "px");*/
        //出现在鼠标的右下方
        stockNode.css("left",event.clientX + 5 + "px").css("top", event.clientY + 5 + "px");
        stockNode.show();
    });
    as.mouseout(function() {
        stockNode.hide();
    });
    getInfo();
    setInterval(getInfo, 1000);


});
function getInfo() {
    $.get("GetStockInfo", null, function(data) {
        //接收并解析json数据
        obj = eval(data);
        var szzs = obj["300001"];
        var pfyh = obj["000001"];
        /* for(var sotckid in obj){
         var stock = obj[stockid];
         }*/
        var szspan = $("#300001").children("span");
        szspan.html(szzs.now);
        if (szzs.now > szzs.yes) {
            szspan.css("color", "red");
        } else {
            szspan.css("color", "green");
        }
        var pfspan = $("#000001").children("span");
        pfspan.html(pfyh.now);
        if (pfyh.now > pfyh.yes) {
            pfspan.css("color", "red");
        } else {
            pfspan.css("color", "green");
        }
        updatediv();
    })
}
function updatediv() {
    var stockobj = obj[sid];
    for (var proname in stockobj) {
        if (proname != "name") {
            $("#" + proname).children("span").html(stockobj[proname]);
        }
    }
}
首先,需要在ASP.NET中创建一个Web应用程序,并添加一个Web Form。在Web Form中,可以使用JQuery实现页面的交互效果。以下是实现模拟股票信息涨跌的步骤: 1. 创建一个ASP.NET Web应用程序,并添加一个Web Form。 2. 在Web Form中添加一个表格,用于显示股票信息。表格中的每一行表示一只股票,包括股票代码、名称、目前价格等信息。 3. 使用JQuery实现定时刷新股票信息的功能。在页面加载完毕后,使用setInterval函数来定时调用一个函数,该函数通过Ajax技术从服务器获取最新的股票信息,并更新页面上的表格。 4. 在服务器端,编写一个ASP.NET Web服务,用于提供股票信息的接口。Web服务可以使用ASP.NET提供的Web API或者WCF服务来实现。 5. 在客户端,使用JQuery的Ajax函数来调用Web服务接口,获取最新的股票信息。获取到的数据可以使用JSON格式来传输。 6. 将获取到的股票信息更新到页面上的表格中,实现涨跌颜色不同的效果。可以使用JQuery的CSS函数来修改表格中每一行的背景颜色,根据涨跌情况设置不同的颜色。 7. 可以添加其他功能,如搜索股票、排序等。 下面是一个简单的ASP.NET Web服务的示例代码: ```csharp [WebService(Namespace = "http://example.com/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] public class StockService : System.Web.Services.WebService { [WebMethod] public List<Stock> GetStocks() { // 从数据库或其他数据源获取股票信息 List<Stock> stocks = new List<Stock>(); stocks.Add(new Stock { Code = "000001", Name = "上证指数", Price = 3500.00, Change = 1.23 }); stocks.Add(new Stock { Code = "600519", Name = "贵州茅台", Price = 2000.00, Change = -0.34 }); stocks.Add(new Stock { Code = "601398", Name = "工商银行", Price = 5.67, Change = 0.56 }); return stocks; } } ``` 在客户端,可以使用以下代码来调用Web服务接口,并更新页面上的表格: ```javascript function updateStockTable() { $.ajax({ url: "StockService.asmx/GetStocks", type: "POST", dataType: "json", contentType: "application/json; charset=utf-8", success: function (data) { // 更新页面上的表格 var stocks = data.d; for (var i = 0; i < stocks.length; i++) { var row = $("#stockTable tr:eq(" + (i + 1) + ")"); row.find(".price").text(stocks[i].Price.toFixed(2)); row.find(".change").text(stocks[i].Change.toFixed(2) + "%"); if (stocks[i].Change > 0) { row.css("background-color", "#cfc"); } else if (stocks[i].Change < 0) { row.css("background-color", "#fcc"); } else { row.css("background-color", ""); } } }, error: function (xhr, status, error) { console.log("Error: " + error); } }); } $(document).ready(function () { // 页面加载完毕后,每隔5秒刷新一次股票信息 setInterval(updateStockTable, 5000); }); ``` 注意,在使用ASP.NET Web服务时,需要将Web服务的类和方法标记为WebService和WebMethod,以及设置正确的ContentType和dataType。在客户端使用Ajax函数时,需要将返回的JSON数据中的.d属性作为实际的数据。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值