大家晚上好,我在更改div样式属性时遇到了麻烦。所以,我有这段代码:
URL示例:www.example.com“ /?page_id = 410&ai1ec = action〜oneday&post = 289

    $( document ).ready(function() {

function getUrlParameter(sParam)
{
    var sPageURL = window.location.search.substring(1);
    var sURLVariables = sPageURL.split('&');
    console.log(sURLVariables);

    for (var i = 0; i < sURLVariables.length; i++)
    {
        var sParameterName = sURLVariables[i].split('=');
        if (sParameterName[0] == sParam)
        {
            return sParameterName[1];
        }
    }

}


下部用于检查和添加样式属性。

    var blog = getUrlParameter('post');
console.log(blog);
    var idx = 1;
    if ($('.ai1ec-event').hasClass('ai1ec-event-id-'+blog)){

    /*$('.ai1ec-event').addClass('ai1ec-expanded');*/
    $('.ai1ec-event-summary').eq(idx).attr('style','display:block');
    idx++;
    }

});


我用它来扩展选择了帖子编号的手风琴菜单,到目前为止,我已经做到了,但是它仅适用于第一次手风琴(我现在有3个,我打算在解决这个问题后再放一些)。

并且有html代码:

<div class="ai1ec-date-events">
    <div class="ai1ec-event         ai1ec-event-id-290         ai1ec-event-instance-id-65">

        <div class="ai1ec-event-header"></div>
        <div class="ai1ec-event-summary " style="display: none;">
    </div>
</div>

<div class="ai1ec-date-events">
    <div class="ai1ec-event         ai1ec-event-id-289         ai1ec-event-instance-id-66">

        <div class="ai1ec-event-header"></div>
        <div class="ai1ec-event-summary " style="display: block;">
    </div>
</div>

<div class="ai1ec-date-events">
    <div class="ai1ec-event         ai1ec-event-id-288         ai1ec-event-instance-id-67">

        <div class="ai1ec-event-header"></div>
        <div class="ai1ec-event-summary " style="display: none;">
    </div>




因此,我需要将ai1ec-event-summary样式更改为display:block;但是我只能通过一种手风琴完成它。有人建议如何做吗?

最佳答案

将函数修改为以下内容:

if ($('.ai1ec-event').hasClass('ai1ec-event-id-'+blog)) {
    $('.ai1ec-event-id-'+blog+' .ai1ec-event-summary').attr('style','display:block');
}


由于您具有博客ID,因此无需跟踪面板的索引。

09-18 14:43