jQuery获取元素的属性’loop’

我尝试使用jquery 1.6.2获取div元素的属性

HTML

JS

 $('#scroller').attr('loop') 

上面的js总是返回undefined。

我尝试将jquery升级到1.6.4,然后相同的js返回单词’loop’。 此循环属性是保留属性吗?

我这样做是为了使用库来滚动文本.http://remysharp.com/2008/09/10/the-silky-smooth-marquee/

真正发生的是jQueryattr实现。 loop是媒体( )元素的布尔属性 ,因此它的存在表明音频或video应该循环。

使用布尔属性时,指定属性名称本身以外的值无效。 当jQuery检查布尔属性时,它返回属性本身的名称。 在这种情况下, [loop]的值是它的名字: "loop"


除非您使用HTML5中指定的[data-]属性,否则不应向元素添加自定义属性:

 

jQuery支持使用data函数访问这些[data-]属性:

 $('#scroller').data('loop'); //returns "2" 

也许,“loop”是jQuery的一些预定义值。 所以,这是一个jQuery错误。

使用简单的JS:

 document.getElementById("scroller").getAttribute("loop") 

看来这是一个bug。

document.getElementById("scroller").getAttribute("loop")将返回2。