2

div をフェードイン/フェードアウトする jQuery スクリプトを使用しているため、Web サイト用に 1 つのページを作成できます。また、Shadowbox スクリプトを使用してギャラリーに画像を表示しています。

問題は、サムネイル (Shadowbox と私の画像を開く) をクリックすると、div のコンテンツが削除されることです。だから私は空白のページになってしまいます。

これが私のフェーダースクリプトです:

  document.documentElement.className += " js";   
  $(function(){
    var $containers = $("#right > div").hide();
    $containers.eq(0).show();

    $('a').each(function(i,el){
      var idx = i;
      $(this).click(function(e){
        var $target = $containers.filter(':eq(' + idx + ')');
        if($containers.filter(':visible').not($target).length){
          $containers.filter(':visible').fadeOut(400, function(){
            $target.not(':visible').fadeIn(400);
          });
        } else {
          $target.not(':visible').fadeIn(400);
        }

      })
    })
  });

div コンテンツを置き換えるのはこのスクリプトの仕事ですが、起動時にシャドウボックス スクリプトの例外を作成することは可能ですか?

作業ファイルはこちら: http://www.hyker.be/minimal

スクリプト (シャドウボックスとフェーダー): http://www.hyker.be/minimal/js/misc.js

4

1 に答える 1

2

実際、クリックコードはギャラリーリンクでも機能します。現在のクリックコードからギャラリーアンカータグを除外するには、jqueryでnot()メソッドまたはセレクターを使用します。

あなたの場合、コードは次のようになります。

$('a').not("a[rel*=shadowbox]").each(function(i,el){
    //existing stuff
})

また

$('a:not(a[rel*=shadowbox])').each(function(i,el){
    //existing stuff
})

幸運を !!

于 2012-10-13T18:38:38.637 に答える