imgタグ(id "image")があります。imgのsrcは、jQueryを使用して割り当てられます(画像ごとに表示できるボタンがあります)。次の画像に進むためのボタンがあります(スライドショーと考えてください)。「次へ」ボタンは、別のjQuery関数へのhrefを含む単なるアンカータグです。
最終的な画像がimgタグのsrcを占めるものである場合、アンカータグ(「次へ」ボタン)のhrefを削除したいと思います。imgタグのsrcであるのが最終的な画像でない場合は、「次へ」ボタンを「アクティブ」にします(他のjQuery関数にhrefを付けます)。
ページが読み込まれるとき、imgタグにはsrcがありません。
私はそれがうまくいくと思って、次のコードを書きました:
<script style="text/javascript">
$(document).ready(function () {
var src = ($("#image").attr("src"));
if (src == "images/big/7.jpg") {
$("#next").attr("href","");
} else {
$("#next").attr("href", "javascript:nextImage()");
}
});
</script>
悲しいことに、そうではありません。imgに「images/big / 7.jpg」のsrcがある場合、「次へ」ボタンは無効になりません。また、「次へ」ボタンが無効になっている場合に、このスクリプトがimgのsrcをチェックし続けるかどうかについても懐疑的です。例:最後の画像に進み、「次へ」ボタンが無効になった場合(hrefが削除された場合)、2枚の画像に戻った場合、「次へ」ボタンが再度有効になりますか(hrefが再度追加されます)?
なぜこれが機能しないのか、そしてそれを実現するために私が何をすべきかについてあなたが与えることができるどんな助けも大いにありがたいです。前もって感謝します。
編集:次の画像コードに加えて、さらにいくつか。
<script style="text/javascript">
function nextImage() {
$("#image").attr("src", $("#image").attr("src").replace(/(\d+)\.jpg/, function(s, m) {
return (parseInt(m, 10)+1) + '.jpg';
}));}
</script>
また、ボタンのコードとimgタグ。previousImage()、lastImage()などは、nextImage()の単なる変更です。乾杯。
<img id="image" src=""></img>
<div class="imageToolbar">
<a id="first" href="javascript:firstImage()"></a>
<a id="previous" href="javascript:previousImage()"></a>
<a id="next" href="javascript:nextImage()"></a>
<a id="last" href="javascript:lastImage()"></a>
</div>