2015-11-24 29 views
0

我已經是一個很長的文本內容頁跳轉到該頁面的不同位置時,標識或名稱不存在

<p class="parahead">401. Heading </p> 
<p>other html content</p> 
<p class="c2">some more data</P> 
... 
<p class="parahead">402. Another heading </p> 
<p>other html content</p> 
... 

添加編號或名稱屬性每個段落標記的是不是一種選擇在所有。我在頁面中有jquery。根據段落的內容是否可以跳轉頁面?我不希望任何其他標記動態地添加到這個網站,因爲它會減慢頁面加載

更新:這個問題 更多信息。我有兩個html文件。說A和B.A是源文件,B對A有一些解釋。在A的滾動事件中,我可以在視口中獲取當前段落的內容/ ID。當用戶點擊周圍包裝的一個按鈕,用戶應採取B上的相應部分(其中有一個的解釋)

+3

是的,這是可能的。你如何獲得文本,在什麼情況下跳躍發生,你至少試圖自己解決這個問題? –

+0

正如Rory所說,這絕對是可能的,但如果您唯一地標記每個元素,它會容易得多。否則它會變得混亂,特別是如果沒有任何標題內容的常量_theme_。 – Butler1233

+0

Rory和@butler,考慮到文件和內容的大小,不可能編輯這個html。我看到的唯一選擇是在頁面加載時以某種方式添加動態範圍,然後將其用於頁面跳轉 – JenonD

回答

0

也許你可以做這樣的:

//Onclick the paragraph 
$('.parahead').click(function(){ 

//Select the number inside the paragraph 
var page = $(this).text().split("."); 

//Redirect to e.g. 401.html 
window.location.replace("./" + page[0] + ".html"); 
}); 

這是你在找什麼?

0

相反

我不希望任何其他標記添加到這個網站動態,因爲它會減慢頁面加載

我結束了在頁面加載添加動態元素。

$(function(){ 
     addTags(); 
     function addTags(){ 
     $('.parahead').each(function(){ 
      var id = parseInt($(this).text()); 
      console.log(id); 
      $(this).after("<span name='parahead" + id +"'></span>"); 
     }); 
     } 
}); 
相關問題