0

javascript を使用して実行時に画像を動的に設定しようとしています。ただし、画像が見つからないというfirebugで常に404エラーが発生します。これを実行すると、JavaScript は画像フォルダではなくホーム フォルダで画像を探すようです。画像の URL を指定する形式がありませんか?
ソリューション内の Images フォルダーを見る必要があるのに、なぜその場所を見ているのですか? また、そのjavascriptを外部にすると、jsファイルへの参照が正しいにもかかわらず、htmlはそれにアクセスできません。これに貢献してくれる人はいますか?あなたは非常に高く評価されます。

これが私のコードです

HTML

<body onload="startTime();">   

        <div class="img">
             <img id="img1" border="0" src="~/Images/Ghandrukpic4.jpg" alt="GhanddrukPic4" class="image" />
        </div>         

</body>

Javascript コード

    $(function () {

        function startTime() {

        var imgArray = new Array("Images/60987Ghandruk Village.jpg", "Images/GhandrukPic2.jpg", "Images/ghandrukpic3.jpg");
        var imgCount = 0;
        if (imgCount == imgArray.length) {
            imgCount = 0;
        }
        document.getElementById("img1").src = imgArray[imgCount];
        imgCount++;
        setTimeout("startTime()", 5000);
    }

});
4

1 に答える 1

1

/配列内の Images 文字列の前にa を追加します。

new Array("/Images/60987Ghandruk Village.jpg", "/Images/GhandrukPic2.jpg", "/Images/ghandrukpic3.jpg");

これにより、ブラウザはサイトのルート ディレクトリからリクエストするように通知されます。スラッシュがない場合は、Relativeロードされるページへのパスです。したがって、現在のページがhttp://yoursite.com/home/の場合、存在しない /home ディレクトリにネストされた images ディレクトリが検索されます。

あなたのjavascriptに関する限り。startTime外部でそのように関数をアンラップすると、正常に動作するはずです。

function startTime() {

        var imgArray = new Array("/Images/60987Ghandruk Village.jpg", "/Images/GhandrukPic2.jpg", "/Images/ghandrukpic3.jpg");
        var imgCount = 0;
        if (imgCount == imgArray.length) {
            imgCount = 0;
        }
        document.getElementById("img1").src = imgArray[imgCount];
        imgCount++;
        setTimeout("startTime()", 5000);
    }
于 2013-09-07T12:38:16.050 に答える