1

リンクがクリックされたときに div の背景画像を変更したいのですが、以下は機能しません。また、できれば薄くしたいのですが...

<style type="text/css>
    #banner { background: url(img/img.jpg); }
</style>

<script type="text/javascript">
    $('#change').click(function () {
        $('#banner').css("background-image", "url(img/otherImage.jpg)");
    });
</script>

<div id="banner">
    stuff
</div>

<div id="container">
    <div id="leftCol">
        <a href="#" id="change">Change</a>
    </div>
    <div id="rightCol">
    </div>
</div>
4

1 に答える 1

2

拘束するのが早すぎます。ハンドラーをアタッチする前に、ドキュメントの準備ができるまで待機するように jQuery に指示する必要があります。

$(function(){
    $("#change").on("click", function (e) {
        e.preventDefault();
        $("#banner").css("background-image", "url('img/otherImage.jpg')");
    });
});

デモ: http://jsfiddle.net/ATrF6/1/

于 2012-05-22T16:49:03.927 に答える