1

写真のjqueryを使用してターゲットdivにドラッグアンドドロップしています。

画像が div 内にあることを確認する関数を呼び出すボタンがありますが、正しく動作させることができません。

私は次のようにしようとしています:

<script>
    ....

    $( '#check' ).click(function(){
        if($("#droptarget:has(img.img1)")){
            alert("yes");
        }else{
            alert("no");
        }
    });
</script>

<img id="img1" class="img1" src="image.png">
<div id="droptarget"></div>
<a href="javascript:" id="check">check</a>

私のコードで何が問題になっていますか?

EDIT:div内の画像なしでアラート(「はい」)を行う最初の条件で常に入ります

4

2 に答える 2

7

それ$()を真実にする常にjQueryオブジェクト、試してみてください

$( '#check' ).click(function(){
    if($("#droptarget:has(img.img1)").length > 0){
        alert("yes");
    }else{
        alert("no");
    }
});

これは、セレクタに一致するものがあるかどうかを確認します#droptarget:has(img.img1)

于 2012-12-08T19:33:39.853 に答える
0

あなたのスクリプトは上#checkにあるので、クリックイベントはバインドされません。を使用する$(document).ready(または単に$(...)、またはスクリプトを下に移動するだけ#checkです。

于 2012-12-08T19:32:47.767 に答える