用JS的a.innerText属性可以做到,再加上个自定义循环就OK了.
解决方案 »
- 求一个正则表达式
- 在FirFox下无法删除Cookies
- 请高手帮忙看一下,为什么我的机器上上传空间(file),在js中抓出的值(value)没有路径,只有文件名,谢谢!
- 点浏览器上后退按钮,怎样控制前一页的div的显示与隐藏
- insertRow,insertCell以及deleteRow在mozilla,netscape等浏览器上怎么用?
- js里怎么获取jsp里的变量?
- 使用XMLHTTP碰到的麻烦问题
- 密码修改用javascript怎么控制??请教大虾
- javascript如何调用java类方法?
- 紧急援助,在线等待
- Javascript··日期分段····
- 任务栏有多个页面,怎么样使一个页面成为焦点。
<head>
<title>test</title>
</head><script>
Date.prototype.format = function(){
var newMonth = null;
switch(this.getMonth()){
case 0:newMonth = "January";break;
case 1:newMonth = "February";break;
case 2:newMonth = "March";break;
case 3:newMonth = "April";break;
case 4:newMonth = "May";break;
case 5:newMonth = "June";break;
case 6:newMonth = "July";break;
case 7:newMonth = "August";break;
case 8:newMonth = "September";break;
case 9:newMonth = "October";break;
case 10:newMonth = "November";break;
case 11:newMonth = "December";break;
}
return newMonth + " " + this.getYear();
}function init(){
var array = document.getElementsByTagName("li");
var reg = /(\d{4}\/\d{2}\/\d{2}) - (\d{4}\/\d{2}\/\d{2})/;
for(var i = 0;(e = array[i]); i++){
var matcher = reg.exec(e.innerHTML);
var fDate = new Date(matcher[1]);
var lDate = new Date(matcher[2]);
e.innerHTML = e.innerHTML.replace(reg,fDate.format() + " - " + lDate.format())
}
}
</script><body onload="init()">
<ul>
<li><a href='/archives/1059689.html'>2007/04/01 - 2007/04/30</a></li>
<li><a href='/archives/1056377.html'>2007/05/01 - 2007/05/31</a></li>
<li><a href='/archives/1059688.html'>2007/06/01 - 2007/06/30</a></li>
<li><a href='/archives/1065036.html'>2007/07/01 - 2007/07/31</a></li>
<li><a href='/archives/1074669.html'>2007/08/01 - 2007/08/31</a></li>
<li><a href='/archives/1082390.html'>2007/09/01 - 2007/09/30</a></li>
</ul>
</body></html>
同时期待如果有更好的方法.
另外如果不在 body 中加入 onload="init()" 可以吗?
再次感谢!
在 Safari 里面, 输出结果中的 2007 变成 107 了 - -.April 107 - April 107
但是必须符合 “yyyy/MM/dd - yyyy/MM/dd”格式上面的代码中是将所有的 <li> 标签里的日期替换
2、如果不加 onload="init()"
那可以在 <script>.......</script> 的最后面加一句
document.onload=init;
在这之前,我没有听说过 Safari ...............
原来有个 1900 的问题...
<li><a href='/archives/1059689.html'>2007/04/01 - 2007/04/30</a></li>
<li><a href='/archives/1056377.html'>2007/05/01 - 2007/05/31</a></li>
<li><a href='/archives/1059688.html'>2007/06/01 - 2007/06/30</a></li>
<li><a href='/archives/1065036.html'>2007/07/01 - 2007/07/31</a></li>
<li><a href='/archives/1074669.html'>2007/08/01 - 2007/08/31</a></li>
<li><a href='/archives/1082390.html'>2007/09/01 - 2007/09/30</a></li>
</ul>
<script>
var m = ['Janu', 'Febr', 'March','Apri','Mary','June','July','Augu','Sept','October','Nove','Dece'];
var ul = document.getElementsByTagName('ul')[0];
var reg = /(\d+)\/(\d+)\/\d+\s*\-\s*(\d+)\/(\d+)\/\d+(?=<\/a>)/gi;
var str = ul.innerHTML.replace(reg,'$2 $1 - $4 $3');
str = str.replace(/\d{1,2}(?=\D\d{4})/g, function(n){return m[parseInt(n)];})
ul.innerHTML = str;
</script>