2011-03-31 117 views
0

我有頁面需要從CMS獲取用戶內容,並在具有靜態高度的頁面上顯示,並將溢出分解爲前端頁面。具有靜態高度和動態內容的jQuery尋呼機

我看着成各種的jQuery插件尋呼機,他們都需要一個特定的標籤目標(P,DIV,LI)凡在我來說,我不知道用戶進入CMS什麼標籤。

var content = $("#weekly-features").children(); 
var pageHeight = 0; 
var nextHeight = 0; 
var pageCount = 0; 
var start = 0; 

    // loop through and wrap p's with page divs 
for (var i = 0; i < content.length; i++) { 

     pageHeight += $(content[i]).outerHeight(); 

     if ((i + 1) < content.length) { 
nextHeight = $(content[i + 1]).outerHeight(); 
} 

     if ((pageHeight + nextHeight) >= 400) { 
pageCount++; 
$(content.slice(start, i)).wrapAll('<div class="page' + pageCount + '" />'); 
pageHeight = 0; 
start = i; 
} 
} 

    // wrap remaining page 
if (start < content.length) { 
pageCount++; 
$(content.slice(start)).wrapAll('<div class="page' + pageCount + '" />'); 
} 

    // show first page 
$("#weekly-features div").each(function() { 
if ($(this).attr('class') == "page1") { return; } 
else { $(this).hide(); } 
}); 

    buildPagerNav(pageCount); 
} 

任何想法?

  • 編輯更specific-問題是與靜態身高要求:我的HTML看起來是這樣的:

第1款(短)

款2(短)

第3段(長)

  • 列表1
  • 列表2
  • 列表3
  • 列表4
  • 列表5

第4段(短)

  • 列表1
  • 列表2
  • 列表3
  • 列表4
  • 清單5

其中小段將是相同的頁面和一長串需要被分成不同的網頁...有點喜歡在Word中插入一個動態分頁符我猜..

+0

你正在使用什麼傳呼機插件? – 2011-03-31 19:28:00

+0

我嘗試了一些包括:http://rikrikrik.com/jquery/pager/,但我找不到一個會按照靜態高度要求分解頁面。上面的代碼是我試圖滾動我自己的 - 你可以看到我不是一個JS忍者:) – Mike 2011-03-31 19:34:48

+0

所以你的代碼有錯誤或者根本不運行?如果有錯誤,會出現什麼樣的錯誤? – 2011-04-01 04:17:39

回答

1

你有沒有考慮使用$(「*」)選擇器?這將選擇任何標籤繳費

要精確,你可以做這樣的事情

$( 「#contentCMS *」)尋呼機()。

OR

$( 「#contentCMS」)找到(*)尋呼機()。

+0

這和做$(「#weekly-features」)非常相似。對? – Mike 2011-03-31 19:16:19

+0

不,* selector與children()方法不一樣。 *選擇目標元素的所有子孫,而孩子只選擇目標元素的子元素。 – 2011-04-01 04:27:34