2013-06-03 36 views
1

中的一個元素中我有一個頁面,它在一個名爲TINY框的模態彈出框中加載動態內容。內容僅在單擊各個鏈接時生成。然後我有一個名爲var innerhtml = "<div id ='"+d.name+"'>的變量,它在模態框中生成div。將動態和不可見div(TINY框)內部滾動到

其中d.name是一個根據我的數據動態生成值的變量。該div位於主模塊盒子div內,每當用戶打開鏈接並關閉盒子時,該div就會生成並銷燬。

逸岸上即時生成連盒: var innerhtml2 = "<div id ='box'>

但是當盒子打開,我想框自動滾動到一個特定的div(根據我上面提到的IDS) 。

我試過ScrollTop,ScrollTo和Scrollintoview--但我沒有任何運氣,因爲模態框在飛行中被創建和銷燬,而且我已經讀過這些功能只在頁面完全加載後才起作用。是否有可能編寫一個程序,可以自動將動態生成的模態框滾動到動態生成的div中?

那麼我該如何做到這一點?你需要代碼片段嗎?

在此先感謝!

考希克

回答

0

假設我理解你的權利,你也許能夠打開的創建框和後DIV已經被添加到DOM函數中使用下面的jQuery代碼:

$('html, body').animate({ 
    scrollTop: $("#"+d.name).offset().top 
}, 1000); 

這將滾動到存儲在變量d.name中的元素頂部,

+0

我不想滾動到頂部。我希望能夠根據用戶在完全加載頁面後單擊的位置使用自動滾動來瀏覽模式框的頂部到底部。另外,我在Chrome上的控制檯仍然給我一個「無法讀取屬性頂部的未定義」 – KaushikTD

+0

如果你甚至會打擾看看jQuery的文檔,你會看到,scrollTop是什麼。看看這個小提琴,它以一種非常基本的形式,完全符合你的想法:http://jsfiddle.net/57DS6/ – bouscher

+0

好吧,我用它來模仿我的模式盒子:http://sandbox.scriptiny的.com/tinybox2 /。這是因爲它是一個模態框,你的代碼並不適用於我。我嘗試過,但由於某種原因,當我嘗試滾動到元素時,它沒有找到模式框的內部元素。 ScrollTop給我一個「無法讀取屬性頂部的undefined」 – KaushikTD