2017-03-02 38 views
-1

我有索引頁(菜單)用於在同一目錄中的其他.html頁面之間導航。使用JS/jQuery/Ajax從.html文件獲取document.title?

結構如下:

index.html 
000001.html 
000002.html 
000003.html 
000004.html 
... 
header.html 
bottom.html 
000001 
    SomeFile.png 
    ... 
000002 
    SomeFile.zip 
    ... 
... 

,我需要得到這一切document.title ****** HTML文件中的index.html。

UPD:忘記包含其他文件和文件夾,例如,抱歉。

+0

你需要得到th每個頁面的標題一次?或只是當前頁面? document.title是檢索頁面標題的正確代碼。 – oompahlumpa

+0

@oompahlumpa每頁一次。 – KAYOver

+1

這些文件中有多少文件,它們有多大?因爲如果你仔細想想,你將不得不將每個文件加載到內存中,獲取'title'元素,然後獲取下一個文件,等等。有很多網絡流量的潛力... –

回答

0

下面代碼從HTMLS

標題
$(document).ready(function() { 
    var files = ['000001.html', '000002.html', '000003.html']; 

     for (i = 0; i <= files.length; i++) { 
      jQuery.get(files[i], function (data) { 

       var htmlstr = $.parseHTML(data); 
       //alert($(htmlstr).filter('title')[0].text); 
       $('#test').append($(htmlstr).filter('title')[0].text); 
      }); 
     } 
}); 

<div id="test"></div> 
+0

謝謝,那麼我需要將它們全部打印出來,然後每個打印到不同的div。我如何做到這一點? – KAYOver

+0

只需將alert語句替換爲$(YOURJQUERYSELECTOR).append($(htmlstr).filter('title')[0] .text)下面的append即可。

Aundy

0

退房jQuery .load()

您可以從對方頁面使用類似的填充與標題的頁面:

$(function(){ 
    var numberOfHtmlDocs = 10; // this will search through 000001.html ... 000010.html 
    var numberFormat = function(number, width) { // useful for padding numbers with 0's 
    return new Array(width + 1 - (number + '').length).join('0') + number; 
    } 

    for(i = 1; i <= numberOfHtmlDocs; i++) { // loop through for each document 
    var paddedInt = numberFormat(i, 6); // change '1' to '000001', etc. 
    $('body').append('<h3></h3>'); // Add a container to put the value in 
    $('h3:last-child').load(paddedInt + '.html title'); // Set the text of the container that was just added to be the value of the title 
    } 
}); 

許多感謝以alex的回答this question.