2011-10-21 10 views
0

私は既存のスクリプトにアドレスプラグインを追加しようとしていますが、問題が発生しています。Jqueryアドレスプラグと既存のスクリプト

ここは私のjqueryとhtmlです。私は私のscript.js後jquery.address-1.4.min.jsを含めています、だけで確認する

jQuery.noConflict(); 
jQuery(document).ready(function($) { 

$('.dk_movie_list .grid').hide().css('visibility','visible').address(); 

$('.dk_movie_list .grids .all').show(); 

$('.dk_movie_list .grids .all').jScrollPane({ 
    verticalDragMinHeight: 205, 
    verticalDragMaxHeight: 205 
}); 

// Display all on initial load 
$('.dk_movie_list .grids .all').css({position:'absolute',display:'block'}); 

$('.dk_movie_list ul.nav li').click(function() { 
    $(this).addClass('btnSelect').siblings().removeClass('btnSelect'); 
    i = $(this).index(); 
    $('.dk_movie_list .grid:visible').fadeOut(400, function() { 

     $('.dk_movie_list .grid:eq(' + i + ')').fadeIn(400).address(); 

     $('.dk_movie_list .grid').jScrollPane({ 
     verticalDragMinHeight: 205, 
     verticalDragMaxHeight: 205 
     }); 

    }); 

    $('.dk_movie_list .grid').jScrollPane({ 
     verticalDragMinHeight: 205, 
     verticalDragMaxHeight: 205 
    }); 

    }); 
}); 


<ul class="nav"> 
         <li class="all"><a class="btnSelect" rel="address:all">All</a></li> 
         <li><a rel="address:Action-Adventure">Action-Adventure</a></li> 
         <li><a rel="address:Comedy">Comedy</a></li> 
         <li><a rel="address:Drama">Drama</a></li> 
         <li><a rel="address:Documentary">Documentary</a></li> 
         <li><a rel="address:Foreign">Foreign Films</a></li> 
         <li><a rel="address:Horror">Horror</a></li> 
         <li><a rel="address:Independent">Independent</a></li> 
         <li><a rel="address:Family">Family</a></li> 
         <li><a rel="address:Music">Music</a></li> 
         <li><a rel="address:Romance">Romance</a></li> 
         <li><a rel="address:SciFi-Fantasy">SciFi-Fantasy</a></li> 
         <li><a rel="address:Suspense-Thriller">Suspense-Thriller</a></li> 
        </ul> 

を(他のライブラリは、このプロジェクトに含まれるためnoConflictが必要です)。私もjScrollPaneライブラリを持っています。

現在、各アンカーをクリックすると、パスが変更され、前に戻ることもできますが、過去のlocalhost:8888 /#/ Comedyをコピーすると、最初のメニュー項目がデフォルトになります。

提案やヒントありがとうございます。

+0

どうすればよいですか?ページのリロード時にハッシュタグをチェックする必要があります。ハッシュタグがある場合は、そのアイテムで関数をアクティブにします。 http://www.brightcherry.co.uk/scribbles/2011/09/02/jquery-get-the-hash-tag-value-from-a-url/ –

+0

申し訳ありませんが、私はどのようにするか分からないjsのビットを追加してください。詳細を教えてください。再度、感謝します! – arkjoseph

答えて

1

ページID(ハッシュタグ)はクリックを示していません。

したがって、localhost:8888 /#Comedyまたはlocalhost:8888と入力すると違いがあります。

しかし、あなたができることは、pageloadのハッシュタグをチェックしてから、スクリプトをクリックして脅威にすることです。ザッツあなたはJSでターゲットにどのようなことから、A、あなたはLIタグのクリックをwan'tていないと仮定し

ので

if(window.location.hash) { 
//set the value as a variable, and remove the # 
var hash_value = window.location.hash.replace('#', ''); 
//i don't know your code so i can only simulate a click, you should instead do the real function 
$('a[rel$="'+hash_value+'"]').parent().click(); 
} 

イム。

関連する問題