馬特·卡茨說Google可以通過流浪器抓取網站,這足以解釋Google可以訪問一些Javascript和AJAX中的內容。但Google真的可以訪問Javascript中的內容嗎?還是有很多站長提出了疑惑。這裡需要強調,Google只能訪問索引Javascript中的一些內容,網站中很重要的內容還是應該放置在普通的html檔案中。哪些Javascript中的內容能被檢索和訪問?我們需要做一些測試,來測試不同類型的Javascript和AJAX,然後看看Google的索引。
在測試的過程中我們會遇到一個問題,AJAX和Javascript你可以做很多事情,你不能把所有的內容都測試到,所以只能通過測試幾個基本指令碼的網站內容進行互動使用,組裝後的範例程式碼包含測試內容,解析來的工作就是等待,直到搜尋引擎索引你的內容。
開始簡單的document.write方法
在Javascript中,有幾個基本的寫法,將外部的內容的寫入到網站頁面本身中。其中之一是document.write方法。此方法寫入一個文本字串直接到Web頁的檔案。
< body >
< script type="text/javascript" >
document.write("你好,你能讀到這些內容嗎?");
< /script >
< noscript >
我猜你不能看到。
< /noscript >
< /body >
當使用document.write方法寫入的內容,搜尋引擎抓取頁面的時候是能索引到的,這是一個最簡單的方式。然而在許多情況下,網頁中的Javascript都是通過一個外部外部Javascript檔案匯入到網頁中,所以我們必須進行第二次測試檔案。
< body >
< script type="text/Javascript" src="myjavascripe.js" >< /script >
< noscript >
你能看到嗎?
< /noscript >
< /body >
當搜尋引擎索引測試頁的時候並沒有根據代碼中的連結索引和抓取外部檔案中的內容,所以這一點似乎暗示搜尋引擎無法讀取一個外部Javascript檔案中的內容。
另一種方式:innerHTML
寫在Javascript內容的另一種方法是使用innerHTML。此屬性更新一個現有元素在網頁上的內容。例如,如果您的網站上有一個段落,你可以使用innerHTML改變該段中新的內容。這裡可以同時進行兩個測試檔案,首先放置的Javascript包含Google被抓取的頁面上的內容,如圖所示:
第二個測試檔案放置在一個外部Javascript檔案中,但是在外部Javascript檔案中所編寫的代碼是一樣的,測試的最終結果是當指令碼是相同的網頁上,搜尋引擎索引的內容沒有問題,在外部的Javascript檔案的內容,搜尋引擎依舊沒有被索引。
測試標籤內容
當測試完基礎知識內容後,我更新測試一些較為複雜的內容,Javascript的一個常見的用法是建立標籤內容,標籤建立能增加頁面的使用者體驗度,並且協助減少頁面的長度,在這裡,將jQuery的標籤和Ajax選項卡兩種標籤作為測試檔案內容。
jQuery指令碼在一個頁面上的所有內容。然後,該代碼顯示和隱藏部位的基礎上被點擊的選項卡的內容。另外,AJAX標籤指令碼傳播的內容在不同的檔案,即使在瀏覽器中查看它看起來像一個檔案的內容存在。
最終的測試結果證明,jQuery的標籤的方法能夠被搜尋引擎所索引,並且頁面中所有的相關的內容都能被檢索到,這對最佳化而言是至關重要的。然而,與AJAX標籤索引外部檔案分開;Google是不是能夠理解AJAX的標籤,意味著所有的內容應關聯到一個單一的頁面。
通過上面的測試可以得出搜尋引擎可以執行一些Javascript中的內容,但依舊還是有一些限制,最好的做法是把你想要搜尋引擎抓取的內容和基本的html指數一樣,放在一個頁面頁面中,或者使用jQuery的標籤,把一個檔案傳播跨越幾個檔案的內容,而不是AJAX的標籤內容。總之,很容易讓Google來訪問您的內容。
原創文章來源:http://www.leadseo.cn/seohangye/seozixun/ 站長首發A5,轉載請保留有效連結地址,謝謝!