2013-08-26 213 views
-1

我試圖使用$。載有()函數,但我發現虛假每次:

$.contains(openedParent, event.target); //evaluates to false 
$.contains(event.target, event.target); //evaluates to false 

據我所知event.target是DOM元素。

這裏是的jsfiddle的完整代碼:

http://jsfiddle.net/xQyAm/

我將不勝感激,如果有人能告訴如何解決這一問題。謝謝 !

+0

什麼是'openedParent'?請在帖子中添加**完整的**示例。 –

+1

'.contains()'只適用於後代。一個DOM節點不能是它自己的後代,因此不能.contains()本身。 –

+0

我試圖想到一個邏輯測試。 – gskema

回答

2

ReferenceError: event is not defined @http://fiddle.jshell.net/_display/:44

你忘了添加event爲回調函數的第一個參數。

此外,$.contains()預計這兩個參數的DOM元素 - 但您傳遞一個jQuery對象作爲第一個參數。這樣的改變也修復了整個問題:

$("#info").text("box1 contains box2 ? " + $.contains(openedParent[0], event.target)); 

更新小提琴:http://jsfiddle.net/xQyAm/2/

+0

那麼......太侷限/ RTFD問題了? –

+0

是的,有點... – ThiefMaster

+0

這是行得通的,謝謝! – gskema

相關問題