jQuery是否在IE8锚标签中添加了自己的会话属性?

时间:2012-03-12 22:50:44

标签: jquery internet-explorer-8

我刚从MooTools迁移到jQuery。在IE8浏览器模式下查看网站时(在Firefox,Chrome和IE9 +中都很好,我注意到我的主播不再发送ajax调用。

我做了一些挖掘并注意到锚标记附加了一个奇怪的属性:

<A id=button_overview class=btn_overview onclick="overview(); return false;" href="" jQuery17103184397447030644="11"></A>
<A id=button_profile class=btn_profile onclick=" getuserinfo(99, 'profile'); return false;" href="" jQuery17103184397447030644="12"></A>
<A id=button_reports class=btn_reports onclick=" reports(); return false;" href="" jQuery17103184397447030644="17"></A>

这是jQuery这个词,后跟一个20位数字,在页面刷新时有所不同,有点像会话密钥。这个键似乎是根据特定锚点的位置为自己赋值。正如您在上面的代码片段中所看到的,我在此处添加的特定手工挑选的锚点被分配了11,12和17,用于属性“jQuery17103184397447030644”,当然这将在刷新时更改。

我试图让ajax再次工作,甚至不知道这是否是问题,但它似乎是显而易见的,我应该看到的突出。

当我在捕获网络请求/响应时单击这些锚点时查看实际请求时,请求正文似乎是空白的,但响应确实返回了每个请求所需的通用json数据,而不是json数据。发送特定命令,因为实际上从未发送过实际命令。

想法?

谢谢!

1 个答案:

答案 0 :(得分:3)

我认为你会发现这是jQuery在DOM中使用通用格式$(selector).data('name',value);的语句存储数据的方式。如果我是对的,那么这些语句必须存在于你的代码中或者插件中,并且似乎IE8的View Source决定以HTML xxx =“...”形式显示这些属性。

如果我是对的,那么这些属性的存在应该是jQuery正常工作的证据;其他东西阻止了ajax的运作。