Js代碼直接寫在asp.net 的主版頁面(Master Page)了,原理是直接從Web文檔的“導航”代碼中取出最後元素的文本值。 1//<![CDATA[
2 (function(){
3 window.addEventListener ? window.addEventListener('load', titleLoad, false) : window.attachEvent('onload', titleLoad);
4 if(!document.getElementById) return;
5 function titleLoad() {
6 var oTextObj = document.getElementById('lastNode');
7 if(!oTextObj) return;
8 sText = oTextObj.innerHTML;
9 if(!sText) return;
10 document.title = '蝴蝶樹 - '+ sText;
11 }
12 }());
13 //]]>
HTML代碼請參見《精通 HTML》6.4 語義導航。
上面的方法是有語義的情況。
在實際工作中的運用:
http://demo.idea-source.net/baicheng/cn/index/
而下面的方法是無語義的情況:
在 .net 2.0 的 SiteMapPath 服務端控制項是產生了無語義的 span。 1//<![CDATA[
2 (function(){
3 if(!document.getElementsByTagName) return;
4 var spanElm = document.getElementsByTagName('span');
5 if(!spanElm) return;
6 for(var i=0; i < spanElm.length; i++) {
7 var spanElmOfSpan = spanElm[i].getElementsByTagName('span');
8 if(!spanElmOfSpan) continue;
9 for(var j=0; j<spanElmOfSpan.length; j++) {
10 spanElmOfSpan[spanElmOfSpan.length-1].id = 'lastNode';
11 }
12
13 }
14 }());
15 //]]>
在實際工作中的運用:
http://demo.idea-source.net/hds/cn/index/