但是,當您使用jQuery.fn.is()與預先未知的組合選擇器比較元素並且可以匹配父容器中的多個元素時,上述解決方法不適用。
例如,當在selectorText style_get(下面)等於同一拋出異常: 「.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:懸停.mCSB_dragger .mCSB_dragger_bar」
..because懸停不Sizzle.selectors.pseudos或Sizzle.selectors.setFilters定義(jquery的-2.1.4,1764線)..
function style_get(elem) {
var sheets=document.styleSheets;
var css_properties={};
elem=$(elem);
for (var s in sheets) {
var rules=sheets[s].rules || sheets[s].cssRules;
for (var r in rules) {
if (elem.is(rules[r].selectorText)) {
css_properties=$.extend(
css_properties,
css.parse(rules[r].style),
css.parse(elem.attr('style'))
);
}
}
}
return css_properties;
}
你試圖回答自己的問題?如果是這樣做的話:寫一個答案。 – 2013-05-11 13:14:55
你讓事情變得複雜。只需['。.hover()'](http://api.jquery.com/hover/)會:http://jsfiddle.net/BxL4w/5/ – Antony 2013-05-11 13:21:46
@Anthony:錯。我想要一個布爾值,它是否被徘徊。我不想執行懸停操作。 – mathheadinclouds 2013-05-11 13:54:33