2012-09-28 13 views
1

當使用「hasOwnProperty」檢查樣式屬性的存在時,Firefox將返回false,而Chrome和IE按照我期望的方式運行,並將使用它們各自的變換前綴返回true。但是,如果我使用「in」運算符,它就可以工作。object.style.hasOwnProperty('MozTransform')返回false?

object = document.getElementById('myThing'); 
console.log(object.style.hasOwnProperty('MozTransform') // False 
console.log("MozTransform" in object.style); // True 

我想知道是否有人可以解釋爲什麼hasOwnProperty在Firefox中工作如此不同。

+0

jquery doc的地址這個問題[這裏](http://api.jquery.com/jQuery/#jQuery2)這個鏈接[here](http://www.easyjquery.com/jquery-parsing-raw-html -and-hasownproperty-on-firefox /)在嘗試查找基於'。hasOwnProperty'的元素時提供瞭解決此問題的一些建議,但看起來你已經有了一個很好的解決方案。 –

回答

1

按照規範,像這樣的屬性是原型的屬性,而不是對象本身。因此,你在Firefox中看到的行爲。