1

Jquery UI ajax タブを使用して、サイトにコンテンツを表示しています。タブはうまく機能しています。私のAjaxタブのそれぞれに、うまく機能していない画像回転子があります。

画像回転子が正しく機能するには、jquery が必要です。jquery image rotator プラグイン ファイルはすべて、このコードを除いて正常に動作しているようです...

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


            var banner1 = $('#banner-rotator1').royalSlider({
                imageAlignCenter:true,
                imageScaleMode: "fill",

                hideArrowOnLastSlide:true,
                slideSpacing:20,

                autoScaleSlider: true,
                autoScaleSliderWidth: 1150,
                autoScaleSliderHeight: 400
            }).data("royalSlider");             


            var banner2 = $('#banner-rotator2').royalSlider({
                imageAlignCenter:true,
                imageScaleMode: "fill",

                hideArrowOnLastSlide:true,
                slideSpacing:20,

                autoScaleSlider: true,
                autoScaleSliderWidth: 1150,
                autoScaleSliderHeight: 400
            }).data("royalSlider");  

            var banner3 = $('#banner-rotator3').royalSlider({
                imageAlignCenter:true,
                imageScaleMode: "fill",

                hideArrowOnLastSlide:true,
                slideSpacing:20,

                autoScaleSlider: true,
                autoScaleSliderWidth: 1150,
                autoScaleSliderHeight: 400
            }).data("royalSlider");

            var banner4 = $('#banner-rotator4').royalSlider({
                imageAlignCenter:true,
                imageScaleMode: "fill",

                hideArrowOnLastSlide:true,
                slideSpacing:20,

                autoScaleSlider: true,
                autoScaleSliderWidth: 1150,
                autoScaleSliderHeight: 400
            }).data("royalSlider");
        });

コードを切り取ってajaxページに貼り付けると正常に動作するため、コードが機能することはわかっていますが、コードが「マスターページ」に配置されていると画像回転子が機能しないようです。誰かが私が間違っていることを知っていますか?

ここに私のページへのリンクがありますhttp://dl.dropbox.com/u/14080718/Ajax-Test/Ajax-stripped.html

4

2 に答える 2

1

これは、このコードが DOM の準備ができたときに実行されるためです。つまり、マスター ページの DOM の準備ができています。後で ajax コンテンツをロードすると、ajax コンテンツをロードする前に JavaScript コードが既に実行されています。できることは、そのコードを関数に配置することです。次に、ajax で読み込まれたコンテンツで、その関数を実行しますdocument.ready

例えば

あなたのマスターページで

function code_to_run(){ 
    // your code here 
}

あなたのajaxロードされたコンテンツで

$(function(){ 
    code_to_run() // call the function in your masterpage 
}); 
于 2012-04-19T17:47:43.523 に答える
0

マスター ページとコンテンツ ページの相互作用は複雑であり、 http://www.codeproject.com/Articles/36107/Master-Page-and-Content-Page-Interactionを見るとよく理解できます。そこには、マスター ページからコンテンツ ページを参照する方法を説明する段落があります。これが役立つことを願っています

于 2012-04-19T19:07:03.210 に答える