2012-12-08 105 views
1

我正在使用圖片的jquery拖放到目標div。檢查一個div是否有使用jquery的img元素

我有一個按鈕,調用一個函數,應該檢查圖像是否在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> 

什麼是錯在我的代碼?

編輯:總是進入第一個條件,而不做圖像警報(「是」)的股利

回答

7

$()總是一個jQuery對象,這使得它truthy,嘗試

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

它檢查是否有到選擇任何比賽#droptarget:has(img.img1)

0

你的腳本是上述#check內,因此點擊事件沒有得到約束。使用$(document).ready(或只是$(...)或者只是將腳本移動到#check以下。

相關問題