2010-12-02 39 views
2

我正在實現一個jqueryui模式對話框,related blog顯示了一種實現它的方法,但我不明白$("<div></div>")實際上在做什麼。這是否創建一個空白div元素使用?這是一個安全的方式來實現這個?

回答

3

它相當於document.createElement('DIV')。你可以看看jQuery source。尋找評論:

// Handle HTML strings 

你會看到它是如何工作的。

創建的<div>是空的,沒有屬性,並且未附加到DOM。

它更經常可以看到它寫成:

$('<div />') 

...但不是功能不同。

通常將它鏈接到像appendTo()這樣的方法,將其插入到DOM中。

+0

感謝一大堆的詳細回覆=) – Stefan 2010-12-02 20:07:22

1

這是創建一個空白的div使用。我不明白爲什麼它不被認爲是安全的。這是有效的標記。你對此有什麼擔憂?

1

它是安全的,但那種過時的,這是更好地使用:

$("<div/>"); 

或者您也可以選擇預定義的內容,事件處理程序等:

$("<div/>",{ 
    "html" : "some content", 
    "click" : function(){ 
    //do something. 
    } 
});