IE7中的奇怪问题只在其他任何浏览器中都没有

这是一个简单的HTML,

我有jquery-ui(1.10)和jquery(1.9.1)。 它在IE8,9,firefox和Chrome中仅适用于IE 7
HTML有类似下面的内容。 我不知道那是什么,它来自哪里
当我在IE8,9,Firefox和Chrome中看到这个HTML时,这段代码就不存在了

sizzle-1367496452938="[object Object] 

以及注入的所有div标签

 jQuery191030626454110549073="6" 

这里有一些html看起来像这样。任何人都知道这是什么问题?

   

UPDATE
我没有使用sizzle javascript选择器库

这是jQuery用于在IE中附加事件处理程序等的内容。

它被称为expando。 它只是一个字符串,基本上是’jQuery’+时间戳(本质上是一个唯一值)。

jQuery取决于sizzle所以你肯定使用它….

你可以在这里阅读更多: jQuery属性自动添加到元素

经过一番研究, 这回答了我的问题100%

我只是从上面的博客复制粘贴

jQuery如何使用Sizzle选择元素

选择过程

jQuery已经进行了大量优化以使事情运行得更快。 在本节中,我将介绍一些查询,并尝试跟踪jQuery遵循的路由。

$( ‘#头’)

当jQuery看到输入字符串只是一个单词并且正在查找id时,jQuery会调用document.getElementById。 直接而简单。 没有调用Sizzle。

现代浏览器上的$(’#header a’)

如果浏览器支持querySelectorAll,则querySelectorAll将满足此请求。 没有调用Sizzle。

在现代浏览器上$(’。header a [href!=“hello”]’)

在这种情况下,jQuery将尝试使用querySelectorAll但结果将是一个exception(至少在firefox上)。 浏览器将抛出exception,因为querySelectorAll方法不支持某些选择条件。 在这种情况下,当浏览器抛出exception时,jQuery会将请求传递给Sizzle。 Sizzle不仅支持css 3选择器,而且还超越了它。

IE6 / 7上的$(’。header a’)

在IE6 / 7上,querySelectorAll不可用,因此jQuery会将此请求传递给Sizzle。 让我们详细了解Sizzle将如何处理此案例。

Sizzle获取选择器字符串’.header a’。 它将字符串分成两部分并存储在变量被称为部分中。

1个部分= [‘.header’,’a’]下一步是将Sizzle与其他选择器引擎区分开来的步骤。 Sizzle首先从最外层的选择器字符串开始,而不是首先查找具有类头的元素然后向下。 根据保罗爱尔兰YUI3和NWMatcher的演示也从右到左。