【问题标题】:Blinking page title闪烁的页面标题
【发布时间】:2011-01-19 21:38:02
【问题描述】:

我正在尝试为AJAXChat 获取一些通知。为此,我想做的就是让页面的标题闪烁直到聚焦。为此,我使用jquery-titlealert plugin。问题是为 onload 事件生成的 html 是在此处显示的 js 文件中生成的

return  '<div id="'
            + this.getMessageDocumentID(messageID)
            + '" class="'
            + rowClass
            + '">'
            + this.getDeletionLink(messageID, userID, userRole, channelID)
            + dateTime
            + '<span class="'
            + userClass
            + '"'
            + this.getChatListUserNameTitle(userID, userName, userRole, ip)
            + ' dir="'
            + this.baseDirection
            + '" onload="$.titleAlert('New Message');">'
            + userName
            + '</span>'
            + colon
            + this.replaceText(messageText)
            + '</div>';
    return

当我使用它时,它会破坏页面。如果我用(New Message) 替换('New Message'),页面会再次加载,但通知不起作用。我认为这是因为它在 Javascript 中显示了一个 Javascript 函数。有人在这里看到我遗漏的任何东西吗?

【问题讨论】:

  • 能否格式化您的代码?

标签: javascript jquery ajax jquery-plugins jquery-events


【解决方案1】:

您是否尝试过转义引号?即:

+ '" onload="$.titleAlert(\'New Message\');">' 

单引号字符串中的任何单引号 (')(或双引号字符串中的双引号 ("))前面都需要一个反斜杠 (\)。有关字符串和正确的字符转义的更多信息,请参阅MDN String Literals documentation

【讨论】:

  • 该页面不再中断,但仍然无法正常工作,所以这一定不是问题。无论如何我都会给你答案,因为你回答了这个问题并且对原因的解释很彻底。
【解决方案2】:

您需要转义引号。 改变这个

'" onload="$.titleAlert('New Message');">'

到这里

'" onload="$.titleAlert(\'New Message\');">' 

【讨论】:

    【解决方案3】:

    尝试正确转义撇号:

    + '" onload="$.titleAlert(\'New Message\');">'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-08
      相关资源
      最近更新 更多