ul liの代わりにdivとして完全に作成されたメニューとサブメニューがあります。だから、メニュー要素をホバリングすると、特定のdivをターゲットにしてサブメニューとして表示する必要があります。私はサブメニューとして表示する特定のdivをターゲットにするデータターゲットとしてサブメニューIDを渡すことによってjqueryイベントを書いています。ブレークポイントを適用すると、ループは内部に入りますが、サブメニューの初期プロパティ(display:none)を(display:ブロック)に削除できません。 Here is the plunker link for more details。私が間違っているところを教えてください。サブメニューがホバリングにロードされていません
このdivアプローチは正しくはありません。しかし、私は、既存のHTMLに
$("#mainDiv div").hover(function() {
var menuliID = this.id; // id of clicked li by directly accessing DOMElement property
console.log(liID);
var subMenuId = jQuery(this).attr('data-target'); // jQuery's .attr() method
console.log(subMenuId);
jQuery('#' + menuliID).hover(function(){
console.log("entered inside function");
$('#' + subMenuId).css('display', 'block !important');
console.log('"#' + subMenuId + '"');
},
function() {
console.log("entered inside 2nd function")
jQuery('#' + subMenuId).css('display', 'none');
}
);
}
);
うわー。これは役に立ちます。カーソルが既にdiv要素に入ったら、再度ホバーをチェックする必要はありません。なぜ私はそれを考えなかったのですか? – shabarinath
私の答えがあなたの問題を解決すれば私の答えをチェックしてください@ shabarinath – Pritamkumar