Superfish jQuery プラグインを Nathan Smith の adapt.js スニペットと組み合わせようとしています。これは、ブラウザーの幅に応じてさまざまな CSS ファイルに動的に読み込まれます。ドロップダウンが意味をなさないため、モバイル モードで Superfish メニューを無効化/置換/何かしたい。変更を検出してメニューを無効にしようとしましたが、ウィンドウのサイズが再び大きくなったときに再度有効にする必要があります。
ここに私が持っているものがあります:
function htmlId(i, width) {
document.documentElement.id = 'pagesize_' + i;
}
var ADAPT_CONFIG = {
path: '/css/',
dynamic: true,
callback: htmlId,
range: [
'0px to 760px = mobile.css',
'760px = 960_12.css'
]
};
function sfMenu() {
$("#pagesize_1 ul.sf-menu").superfish({
delay: 800,
animation: {opacity:'show'},
speed: 'fast',
autoArrows: true,
dropShadows: true
});
}
$(document).ready(function(){
sfMenu();
});
理論的根拠は、html 要素の id をresize
(pagesize_0
とpagesize_1
- の間で) 変更し、CSS で子孫セレクターを使用してメニューを無効にすることでしたが、それは機能しません。再実行を試みsfMenu()
ましたがresize
(コードは上記に示されていません)、変更された DOM を検査していないようで、pagesize_1
もはや存在しないことに気付き、正常に失敗します (これにより、私が求めている効果が得られると思います)。
何かご意見は?理想的には、superfish
モバイルへのサイズ変更で機能を破棄し、画面が再び大きくなったときに機能を元に戻したいと思います。