1
我試圖將鼠標懸停在一個元素上,檢查該類是否包含前綴,如果是,請將一些樣式應用到這個元素。這個問題是,如果我有一個名爲「bluescript-contact-form」的類(注意前綴「bluescript-」),那麼當我將鼠標懸停在子元素上時,不會觸發這個div。這如何實現?檢查一個父類是否有一個類,如果是這樣應用樣式到這個父
這是迄今爲止我所編寫的代碼:
var controls = {
clickedElement: "",
prefixCheck: function(c){
// classPrefix = "bluescript-"
return (c.indexOf(classPrefix) !== -1) ? true : false;
},
bindUIActions: (function(){
$(outputElement).on("load", function(){
$(outputElement).contents().find("*").on("click", function(e){
e.stopImmediatePropagation();
});
$(outputElement).contents().find("*").mouseenter(function(e){
e.stopImmediatePropagation();
if(typeof $(this).attr("class") !== "undefined"){
/* This works, but only on the current element.
It does not check if a parent contains a class,
that contains a prefix that matches. */
if(controls.prefixCheck($(this).attr("class"))){
$(this).css({
outline: onHoverBorder,
cursor: "pointer"
});
}
/* Else if(a parent contains a class that matches,
apply style to THIS parent element) */
}
});
$(outputElement).contents().find("*").mouseleave(function(e){
$(this).css({
outline: "none",
cursor: "default"
});
});
});
})()
}
我希望這是非常明顯的。任何幫助,將不勝感激。謝謝!
這是否爲每個父母爬行?還是隻有一個?因爲我想檢查所有的父母。 –
@GerritLuimstra不,它不。您可以使用parents()方法來實現此目的。我相應地更新了我的答案。 – 2016-08-15 17:56:52
謝謝!這是我正在尋找的。 –