首页 > 解决方案 > Wordpress onClick 功能在 li 标签中不起作用,已发布链接

问题描述

我正在更新一个 wordpress 网站,由于某种原因,这个 onClick 功能不再起作用。这是在html中:

    <div class="monthes">
        <!--<div class="location_title">Great Wall Hiking Locations</div>-->
        <div class="month_list">
            <ul class="month">
            <?php for($i=1; $i<=12; $i++){
                if($i!=$cur_month)
                   echo "<li onclick=\"tabTurn(this, 'on', 'month_desc');\" class=\"off\">$month[$i]</li>";
                else
                   echo "<li onclick=\"tabTurn(this, 'on', 'month_desc');\" class=\"on\">$month[$i]</li>";
            }?>
            </ul>
        </div>
    </div>

这是功能:

function tabTurn(presObj, classon, showdiv){
    var pObj = presObj.parentNode;
    var items =pObj.getElementsByTagName('li');

    for(var i=0; i<items.length; i++){
        var n = i + 1;
        var cntDiv = $('location_desc_' + n);
        //alert(cntDiv);
        if(items[i] == presObj){
            items[i].className=classon;
            cntDiv.className = showdiv;
        }
        else{
            items[i].className='off';
            cntDiv.className = 'undis';
        }
    }
}

有谁知道为什么这会停止工作?有没有办法我可以摆脱这个内联 onClick 而只是用javascript而不是php来做?该问题可以在此链接中找到:http: //staging.chinahiking.cn/agenda/

如您所见,onclick 实际上正在工作并打开/关闭月份,但 tabBurn 功能不起作用

标签: javascriptphpwordpress

解决方案


您可以使用被动事件侦听器:

$(document).on("click", "class-name", function(){tabTurn(this, 'on', 'month_desc');});

作为“类名”,您需要向<li>元素(或 id)添加类名


推荐阅读