日期:2014-05-16  浏览次数:20398 次

耗费了2、3个月还是解决不了,疯了,求帮忙呀
页面大概5秒自动Ajax去请求服务器端,服务器端返回页面某个局部需要更新的数据,数据格式为XML,为什么,客户端用Jquery $("#id").html(data)会造成IE6、IE7、IE8页面很大的抖动,FireFox却很正常呢?
  【先说明下:本人绝对是为解决问题发帖,不是广告帖,请不要删除我的帖子啊,各位论坛大哥。】
  页面地址:http://www.9677.cc/Stock3/SH900905-11.aspx
  大概5秒想更新下图区域的内容
 
   
  但每次异步请求:http://www.9677.cc/Stock3/SH900905-11.aspx?_=1347934445566&_AjaxTags=dpzshqTop
  结果正常的页面就变成了下图的不正常样子:
 
==============================================
JScript code

$.ajax({
   type: 'get',
   dataType: 'xml',
   cache: false,
   url: url,
   data: '_AjaxTags=' + panelStrings,
   success: function(xml) {
   if (xml) {
   $(xml).find("panellist> panel").each(function() {
   var id = $(this).attr("id");
   var text = $(this).text();
   if ($('#' + id).length > 0) {
   $('#' + id).html($.trim(text))
   }
   })
   }
   if (callback != null) {
   callback(xml)
   }
   },
   complete: function() {},
   beforeSend: function() {},
   error: function(XMLHttpRequest, textStatus, errorThrown) {},
   timeout: function() {}
   })
   },


  ===========================================================
各位帮忙分析下呀。这个问题出了2、3个月一直还是解决不了。
 

------解决方案--------------------
既然数据本身没有出现问题,又因为你处理异步请求的是当前页面,不知道你服务器端做了哪些处理的。那么建议:
将原有ajax处理页地址由:
http://www.9677.cc/Stock3/SH900905-11.aspx?_=1347934445566&_AjaxTags=dpzshqTop
变更为:
http://www.9677.cc/Stock3/ajax.aspx?stock=SH900905?_=1347934445566&_AjaxTags=dpzshqTop
也就是说,将处理异步请求的主体统一更换至另一个页面,通过类似于stock之类的参数来指定需要获取的股票代码。

试试吧,这个很简单的了,将你现有的功能复制一份,新建一个页面,就是了