所以jQuery 1.6有了新函数#0。
$(selector).click(function(){//instead of:this.getAttribute('style');//do i use:$(this).prop('style');//or:$(this).attr('style');})
或者在这种情况下,他们做同样的事情吗?
如果我做必须切换到使用prop()
,如果我切换到1.6,所有旧的attr()
调用都会中断?
更新
selector = '#id'
$(selector).click(function() {//instead of:var getAtt = this.getAttribute('style');//do i use:var thisProp = $(this).prop('style');//or:var thisAttr = $(this).attr('style');
console.log(getAtt, thisProp, thisAttr);});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script><div id='id' style="color: red;background: orange;">test</div>
(另见此小提琴:http://jsfiddle.net/maniator/JpUF2/)
控制台将getAttribute
记录为字符串,将attr
记录为字符串,但将prop
记录为CSSStyleDeclaration
,为什么?这对我将来的编码有什么影响?