我正在为游戏创建一个通知系统,使其类似于手机中的通知工作方式。

这些通知最初都是创建,隐藏的,后来,游戏应该从游戏中的触发器“激活”某些通知。

尝试将通知按类别分开时遇到问题。每个通知都以一个小矩形框开始,只有标题可见。单击后,通知将展开,并且说明将变为可见。

现在,单击通知确实会展开该通知并显示其通知,但是其他任何通知也会同时显示其描述。

示例代码:

var NotificationItems = new Array();

scope.registerNotification = function(title, description)
{

    //add it to the array
    NotificationItems.push(new scope.Application(title, description));

    var $NotificationContainer = $("#NotificationContainer");
    $NotificationContainer.append('<div class="Notification" title="'+title+'"></div>');
    var $thisNotification = $NotificationContainer.children('.Notification[title='+title+']');
    $thisNotification.append('<div class="NotificationTitle">'+title+'</div>');
    $thisNotification.append('<div class="NotificationDescription">'+description+'</div>');
    $(".NotificationDescription").hide();

    $thisNotification.click(function()
    {
        $(this).toggleClass('expanded');
        $('.NotificationDescription').slideToggle('slow');
    });
}


如何获得每个通知唯一识别的.NotificationDescription

最佳答案

您可以尝试.children()方法:jQuery docs for children method

$thisNotification.click(function()
{
    $(this).toggleClass('expanded').children('.NotificationDescription').slideToggle('slow');
});

10-04 21:24