これはこのサイトでの初めての質問なので、ルールに関して少し不慣れに聞こえる場合は、事前にお詫び申し上げます (ただし、すぐに読みました)。
とにかく私の問題に。
UL を使用し、CSS といくつかの JQuery を介してカスタマイズされた SharePoint 2010 でカスタム メニューを作成しました。
それはまさに私が望むように見え、IE8、FF、および Chrome で優れたパフォーマンスを発揮します。ここにある古い遅いマシンでテストしましたが、問題なく動作します。
IE7 がインストールされているマシンでこれをテストすると、問題が発生します。何らかの理由で、トップ メニュー項目にカーソルを合わせると、動作が非常に遅くなります。
私は (先週) JQuery を学び始めたばかりなので、自分のコードで何か完全に間違ったことをしたと思います。
次のコードによって遅くなります。
$("ul.SIDGlobalNav li:not(ul.SIDGlobalNav li ul li)").mouseenter(function() {
if ($(this).is(':not(.LISIDCurrentSelected, .SIDCurrentSelectedParent)'))
{
$("UL.SIDGlobalNav .LISIDCurrentSelected div, UL.SIDGlobalNav SIDCurrentSelectedParent div").css('backgroundPosition', 'left top');
$("UL.SIDGlobalNav .LISIDCurrentSelected div a, UL.SIDGlobalNav .SIDCurrentSelectedParent div a").css('backgroundPosition', 'right top').addClass('tabdown');
if ($(this).children('ul').length < 1)
{
$("UL.SIDGlobalNav .LISIDCurrentSelected ul, UL.SIDGlobalNav .SIDCurrentSelectedParent ul").css('visibility', 'hidden');
}
}
})
私の考えをもう少し理解するのに役立つように、コードが存在する理由を説明します。
メニューは、ドロップライン付きのタブ スタイルのメニューです。メニューまたはその子の 1 つからタブが選択されると、タブが持ち上げられ、ドロップラインのメニュー項目が表示されます。
ユーザーが別のメニュー タブにカーソルを合わせると、現在選択されているタブをドロップしてドロップバーを非表示にするように JQuery を設定しました。
これが少しでも役立つ場合は、画像を提供できますか?
なぜそれが起こっているのかについての指針は非常に高く評価されています。
前もって感謝します。
リッチ