2013-09-29 25 views
0

我想讓我的對話框元素可調整大小jQuery UI(最新) 我已經在我的文檔中包含了Jquery主題CSS和最新的Jquery UI庫。jquery ui可調整新元素不起作用

但是,當我創建我的對話HTML並插入到我的文檔中的可調整大小的功能不調整,調整大小光標是可見的,也是調整手柄是可見的,但是當我拖到什麼也沒有發生!

當我插入我的對話框mannualy的HTML代碼,在我的文檔和應用可調整大小的()插件該對話框可調整大小的()函數的工作!

但是當我插入HTML代碼爲我的對話與

$('body').append($('<div id="dialog">some text</div>')); 然後做到這一點:

$('#dialog').resizable();

手柄是可見的,但它不會調整。

看來可調整大小的()插件不會在DOM新元素的工作?

我已經浪費了我一整天尋找解決方案:(

是否有人知道發生了什麼事!

**編輯**

我發現吧!!可調整大小的()插件在可調整大小的元素上觸發一個事件「調整大小」, 並且我的插件有一個該事件的偵聽器,我認爲只有當我的窗口調整大小時纔會觸發它。

現在我需要更改我的插件,窗戶越來越大調整大小或如果它的一個元素。無論如何,謝謝你們!

+0

燦你發佈一個現場示例?因爲它似乎工作得很好在http://jsfiddle.net/ZcVWp/1/ –

+0

你檢查了你的JavaScript控制檯的錯誤?嘗試使用setTimeout來延遲可調整大小的調用,以查看是否存在某個時間問題。 – Ray

+0

它是一個插件!我真的不能發佈源到複雜。 你的小提琴是工作,我想它在我的本地及其作品。所以在我的插件中肯定有什麼問題,我的控制檯說沒有錯誤,並且在我的css中沒有錯誤。該元素在我的文檔存在,當我檢查使用鉻我的文檔,但無論我嘗試它只是不會調整,可拖動的工作,雖然,這是洙奇怪 – SirCumz

回答

0

你必須使用jQuery UI的css,或者做這樣的事情: 你可以在沒有css文件的情況下工作,但是你必須把css放在div元素上。

看看這個代碼:jQuery用戶界面的

導入CSS:

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" /> 

JS代碼:

<script type="text/javascript"> 
$(document).ready(function(){ 
    $('body').append('<div id="dialog" style="border:1px solid black;height: 100px;left: 0;top: 0;width: 100px;">some text</div>'); 
    $('#dialog').resizable(); 
}); 
</script> 
0

使元素一點點時間來渲染

setTimeout(function(){ 
     $('#dialog').resizable(); 
    },500);