这段js如何才能从onclick执行改为onload就执行

li里面的日期字符串:2018-10-12等等,历遍多个,值都用js取出来并修改成:2018-10《strong》12《/strong》,最后把修改过的结果重新写入到对应的原标签里面,这样我能用css控制做一个设计样式,自己东拼西凑只做到了onclick后能修改,不知道要怎么才能改为不需要鼠标触发就自动执行。

<ul id="news">

    <li><p class="time">2018-10-12</p></li>

    <li><p class="time">2017-08-03</p></li>

</ul>


<script>

//网上找的个函数:replacePos(要替换的字符串, 替换第几位, "替换内容");

function replacePos(strObj, pos, replacetext) {

    var str = strObj.substr(0, pos-1) + replacetext + strObj.substring(pos, strObj.length);

    return str;

}

//修改日期的函数

function picnewsTime() {

    var obj = $(".time");//JQ取得所有class为time的标签

    for(var i = 0; i < obj.length; i++) {

          (function(arg){ 

            var txt = obj[arg].textContent || obj[arg].innerText;//取当前标签内日期值

            var newhtml = replacePos(txt, 8, "<strong>");

            newhtml += "</strong>";

            //这步我就卡住了,onclick去点击时间能实现修改了,但我需要页面加载就修改字符串

            obj[arg].onclick = function() {

                $(this).html(newhtml);

            }

          })(i);//传参数i

    }

}

picnewsTime();

</script>


holdtom
浏览 899回答 2
2回答

人到中年有点甜

你为什么不一开始就直接渲染成2018-10<strong>12</strong>呢
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript