0

作成しようとしているコンテンツウィンドウの一部のJSコードでエラーが発生します。私はそれを言われています}); あるべきではありませんが、問題が何であるか理解できません。古いjqueryの用語を使用していますか?

jQuery(document).ready(function($) {
    $('.contentwindow_trigger').click(function(e) {

        e.preventDefault();

        var image_href = $(this).attr("href");

        if ($('#contentwindow').length > 0) { 
            $('#content').html('<img src="' + image_href + '" />');

            $('#contentwindow').show();
        }
        else { 
            var contentwindow =

            '<div id="contentwindow">' +

                '<p>Click to close</p>' +

                '<section id="content">' +
                    '<img src="#" />' +
                '</section>' +

            '</div>';
            $('body').append(contentwindow);
        }
    }); //HERE

    $('#contentwindow').on('click', function() {
        $('#contentwindow').hide();
    });
});

欠点はここに書かれているところです、どんな助けもいただければ幸いです。

ありがとう!

4

3 に答える 3

0

この行から$を削除してコードを削除します

function($) { 

function() { 

/

 jQuery(document).ready(function() {
        $('.contentwindow_trigger').click(function(e) {
            // Click event code
        });

        $('#contentwindow').on('click', function() {
            $('#contentwindow').hide();
        });
    });

ページの構文エラーに影響を与えないもう1つの変更が必要なのは、要素を動的に追加し、それにクリックイベントを関連付けていることがわかります。

このような場合はイベントを委任する必要があり、イベントが機能しない可能性があります

$('body').on('click','#contentwindow' , function() {
        $('#contentwindow').hide();
    });
于 2012-11-12T20:16:31.293 に答える
0

表示されている構文エラーが何であるかはわかりませんが、この jsfiddle では問題なく動作するようです:

http://jsfiddle.net/xV58c/

あなたを助けるかもしれない私がそこで行った1つの変更。それ以外の:

$('#contentwindow').on('click', function() {
    $('#contentwindow').hide();
});

やった:

$('body').on('click', '#contentwindow', function() {
    $('#contentwindow').hide();
});

#contentwindow のように生成された要素であっても、包含要素 (この場合は「本体」) が下の要素のイベントを処理できるようにする方法で「on」メソッドを使用します。

お役に立てれば。

于 2012-11-13T04:38:08.963 に答える
0

次のスクリプトを使用します。

 jQuery(document).ready(function() {
    $('.contentwindow_trigger').click(function(e) {

        e.preventDefault();

        var image_href = $(this).attr("href");

        if ($('#contentwindow').length > 0) { 
            $('#content').html('<img src="' + image_href + '" />');

            $('#contentwindow').show();
        }
        else { 
            var contentwindow =

            '<div id="contentwindow">' +

                '<p>Click to close</p>' +

                '<section id="content">' +
                    '<img src="#" />' +
                '</section>' +

            '</div>';
            $('body').append(contentwindow);
        }
    }); //HERE

    $('#contentwindow').on('click', function() {
        $('#contentwindow').hide();
    });
});
于 2012-11-12T20:18:38.107 に答える