最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

盡可能寫"友好"的"Javascript"代碼

 更新時間:2007年01月09日 00:00:00   作者:  
在Search Engine的robot搜索時,針對的type,text/html此類“文本”的友好度是最高的(現(xiàn)階段text/xml除外),而text/javascript此類的友好度不理想,如果robot還要判斷DHTML代碼的話,那這個復(fù)雜度也是較高,而且劃不來

因此,在DHTML編程時,如果要提升代碼的友好度。采用的方法,較好的方法是“盡可能是把DHTML的代碼簡化成沒有HTML的代碼”。這句話如何理解?

e.g:
一個javascript menu。
方法一、采用常規(guī)的編程方法:
<script type="text/javascript">
var navi_menu = neverDHTMLmenu();
/* addItem method
 * @ pid 
 * @ id
 * @ text
 * @ href
 */
navi_menu.addItem("0","1","home","http://www.never-online.net");
navi_menu.addItem("0","2","blog","http://blog.never-online.net");
navi_menu.addItem("0","3","music","http://www.never-online.net/music");
navi_menu.init("navigator_Container");
</script>

二、采用對Search Engine較友好的編程方法
復(fù)制代碼 代碼如下:
<script type="text/javascript"> 
onload = function() { 
  var config = { 
    container: document.getElementById("navigator_Container"); 
    // and more configuration code 
  } 
  var navi_menu = new neverCssDHTMLMenu(config); 
  navi_menu.init(); 
</script> 

<div id="navigator_Container" class="navigator_menu"> 
  <ul> 
    <li><a >home</a></li> 
    <li><a >blog</a></li> 
    <li><a >music</a></li> 
    <!-- more... --> 
  </ul> 
<div> 


從方法一和方法二來比較,方法一把一些HTML封裝到了neverDHTMLmenu()里,但這樣做并沒有實際的好處,雖然我們依然可以把CSS給到這個類里。
方法二中可以看到有很多好處,比如,可以將view與program分離,可以實現(xiàn)客戶端的MVC。換個角度說,可以提高開發(fā)效率。

可能有些朋友會問,除了menu,還有哪些程序可以按上述的方法分離呢?
上面也提到了,一般與頁面交互較多的,會產(chǎn)生大量的HTML的,會影響Search Engine的robot的,都可以采用這種方法,當(dāng)然了,這些只是討論對Search Engine的友好度,所以,任何代碼都必須由實際情況而定。

也或者有朋友問,這樣為何會提高開發(fā)效率?
比如,美工做好模板后,(假設(shè)此美工會一些相關(guān)的HTML編寫)那么按照xhtml標(biāo)準(zhǔn),(如上例如示)
假設(shè)我要把原本的home改成Default page,那么美工得和程序員溝通,說要改這個menu的字,溝通時間在開發(fā)中也會多了。因此,在開發(fā)進(jìn)度上,這個時間要算進(jìn)去的。假設(shè)要改模板了,那么還得溝通。再或者假如原來用js生成的HTML是table做成的menu,要改版了,那么這個程序還得改寫。不利于維護(hù)...

這個方法建議大家可以試試,意思主要就是JS負(fù)責(zé)業(yè)務(wù)實現(xiàn),而視圖則仍然交由HTML來處理。

相關(guān)文章

  • EsLint入門學(xué)習(xí)教程

    EsLint入門學(xué)習(xí)教程

    ESLint是一個代碼規(guī)范和錯誤檢查工具,下面這篇文章主要介紹了EsLint的相關(guān)資料,需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。
    2017-02-02
  • JavaScript常用全局屬性與方法記錄積累

    JavaScript常用全局屬性與方法記錄積累

    在學(xué)習(xí)javascript的過程中記錄下常用的全局屬性與方法,就當(dāng)是知識的積累,以備日后使用,感興趣的朋友可以了解下哈
    2013-07-07
  • js創(chuàng)建jsonArray傳輸至后臺及后臺全面解析

    js創(chuàng)建jsonArray傳輸至后臺及后臺全面解析

    下面小編就為大家?guī)硪黄猨s創(chuàng)建jsonArray傳輸至后臺及后臺全面解析。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。
    2016-04-04
  • Javascript基礎(chǔ):運算符與流程控制詳解

    Javascript基礎(chǔ):運算符與流程控制詳解

    這篇文章主要給大家介紹了關(guān)于Javascript中運算符及流程控制的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-10-10
  • JavaScript面向?qū)ο缶幊倘腴T教程

    JavaScript面向?qū)ο缶幊倘腴T教程

    這篇文章主要介紹了JavaScript面向?qū)ο缶幊痰南嚓P(guān)概念,例如類、對象、屬性、方法等面向?qū)ο蟮男g(shù)語,并以實例講解各種術(shù)語的使用,非常好的一篇面向?qū)ο笕腴T教程,其它語言也可以參考哦
    2014-04-04
  • 有關(guān)JavaScript中call()和apply() 的一些理解

    有關(guān)JavaScript中call()和apply() 的一些理解

    下面小編就為大家?guī)硪黄嘘P(guān)JavaScript中call()和apply() 的一些理解。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • 探尋JavaScript中this指針指向

    探尋JavaScript中this指針指向

    JavaScript由于其在運行期進(jìn)行綁定的特性,JavaScript 中的 this 可以是全局對象、當(dāng)前對象或者任意對象,這完全取決于函數(shù)的調(diào)用方式。
    2016-04-04
  • IE、FF、Chrome瀏覽器中的JS差異介紹

    IE、FF、Chrome瀏覽器中的JS差異介紹

    到目前為止各瀏覽器的HTML標(biāo)準(zhǔn)或是JS標(biāo)準(zhǔn)都還未統(tǒng)一,但作為一個開發(fā)人員,還是有需要了解JS在瀏覽器中的差異
    2013-08-08
  • 窗口沒有提示自動關(guān)閉的js代碼

    窗口沒有提示自動關(guān)閉的js代碼

    窗口沒有提示自動關(guān)閉的js代碼...
    2007-03-03
  • JavaScript中的跨瀏覽器事件操作的基本方法整理

    JavaScript中的跨瀏覽器事件操作的基本方法整理

    首先值得說一下,在事件處理、事件對象、阻止事件的傳播等方法或?qū)ο蟠嬖谥鵀g覽器兼容性問題,開發(fā)過程中最好編寫成一個通用的事件處理工具,嗯,接下來我們一起來看一下JavaScript中的跨瀏覽器事件操作的基本方法整理
    2016-05-05

最新評論

井冈山市| 广昌县| 庐江县| 清水县| 泰顺县| 绥宁县| 沅江市| 郓城县| 四子王旗| 伊春市| 赤城县| 同江市| 平陆县| 尼勒克县| 兰西县| 宁河县| 临泽县| 舒城县| 正宁县| 肥西县| 太原市| 会理县| 四平市| 邛崃市| 西青区| 内黄县| 泾阳县| 伊金霍洛旗| 虞城县| 长治县| 茌平县| 剑阁县| 怀仁县| 西乌珠穆沁旗| 明星| 鹤峰县| 稻城县| 西和县| 礼泉县| 道孚县| 宣威市|