OOPモデルでjavascriptがどのように動作するのか完全に理解していないので、私は知恵のためにオーバーフローをスタックするようになります。複数のページにまたがってJavascriptの機能を共有する方法はありますか?
私のコード例:
(function($) {
var $container = $('#container');
var $sidebar = $('#sidebar');
// Sidebar
var currTab = $('#s1');
if(currTab) {
currTab.parent().parent().parent().addClass('selectedTop');
currTab.find(".sideContent").delay(300).slideToggle("slow");
currTab.addClass('selected');
}
$('#sideTop').delegate('li', 'hover', function(event) {
var $this = $(this);
if (event.type == 'mouseenter') {
if(!$this.hasClass("selected")){
$this.siblings(".selected").children(".sideContent").toggle();
$this.siblings(".selected").removeClass('selected');
$this.find(".sideContent").toggle().addClass('selected');
$this.addClass('selected');
}
}
});
})(this.jQuery);
このコードは、私のコンテナやサイドバーのdivをキャッシュし、私のサイドバーのタブのホバリングを制御します。これらはすべてのページに表示されるので、最初はjsファイルを各ページに含めただけで、いつものように動作します。これで、サイドバーの特定のタブ(デフォルトではcurrTab変数で定義されています)を開いて、各ページをカスタマイズするようになりました。設定すると、デフォルトで開き、マウスがサイドバーを離れると開いたままになります。
サイドバーに関連するすべてのコードを完全に再ペーストする必要なく、各ページでcurrTabをカスタマイズする方法が見つかりませんでした。スクリプトを更新するのは面倒です。
これにどのようにアプローチすればよいですか?ありがとう
これは実際にOOPについては考えていません。 – gnur
申し訳ありませんが、それ以外の分類方法はわかりませんでした。 –