0

別の関数にリンクするfadeOut関数を追加しようとしています。こちらをクリック現在、ロゴが点滅しています。ユーザーがロゴをクリックすると、点滅が停止し、わずかな遅延が発生してからゆっくりとフェードアウトします。以下に貼り付けたコードで私を修正できる人はいますか?

    <script>
         $(document).ready(function(){
         $("#center-gif").click(function(){
            $('#center-gif').hide();
            $('#center-img').show();
            });
         $('#center-img').click(function(){
            $('#center-img').hide();
            $('#center-img-gif').show();
        });
         $('flash-link').click(function(){
            $('center-img').fadeOut(5000);
         });
    });
        </script>
4

2 に答える 2

4

class/で要素にアクセスしたい場合id; cssのように、最初にこれらを.常に定義する必要があります。#

いくつかの例:

$('img').fadeOut();//selects all img elements
$('.img').fadeOut();//selects all elements with class="img"

$('myClass').fadeOut(); //false
$('.myClass').fadeOut(); //true

$('myId').fadeOut(); //false
$('#myId').fadeOut(); //true

これがより少ないコードであなたの質問のために働いているjQueryです:

$(document).ready(function(){
     $("img").click(function(){
        var takeId = $(this).attr('id');//takes clicked element's id

        $('img').hide();//hides all content

        $('#'+takeId).show();
        //matches clicked element's id with element and shows that
     });

     $('#flash-link').click(function(){//define '#' id declaration here
        $('#center-img').fadeOut(5000,//new function after fadeOut complete
          function() {
             window.open('url','http://iamnatesmithen.com/jukebox/dancers.php');
             return false;
          });
        );
     });
});
于 2012-07-18T11:13:40.817 に答える
0

ですから、あなたの問題は、その画像がフェードアウトしないことだと思いますよね?

これはそれを解決することができます:

まず、.click()-functionsを次のように変更します。

$().click( function(event) {
    // cour code
    event.preventDefault();
}

そして、そのような最後のものを変更するよりも:

$('#flash-link').click( function(event) {
    $('#center-img').fadeOut( 5000, function() {
        window.location.href = 'jukebox/dancers.php';
    });
    event.preventDefault();
});

私はそれをテストしませんでしたが、うまくいくはずです。機能:画像をフェードアウトし、準備ができたら関数を呼び出します。次に、この関数は次のページにリダイレクトします。

-eventevent.preventDefault();を委任しないようにブラウザに指示しclickます。そこに配置しないと、ブラウザはJavaScriptの実行を待たずにアンカーを開きます。

ノート

IDを持つ要素を選択する場合は、このセレクターを使用します。$('#[id]')このセレクター$('html')はHTML要素でのみ機能するためです。

于 2012-07-18T11:18:12.063 に答える