【问题标题】:How to alert using jQuery如何使用 jQuery 进行警报
【发布时间】:2010-05-10 15:56:11
【问题描述】:

这行得通:

$('.overdue').addClass('alert');

但这不是:

$('.overdue').alert('Your book is overdue.'); 

什么是正确的 jQuery 语法:

FOR EACH CLASS="overdue"
   alert('Your book is overdue');
NEXT

【问题讨论】:

  • 定义“警报”。你想要一个弹出框出现(通过window.alert()),还是什么?
  • 您是否希望仅在点击类过期元素时才显示警报?
  • 我认为alert在上面的例子中定义得恰到好处。

标签: jquery


【解决方案1】:
$(".overdue").each( function() {
    alert("Your book is overdue.");
});

请注意,“.addClass()”之所以有效,是因为 addClass 是在 jQuery 对象上定义的函数。您不能只是在选择器的末尾添加任何旧函数并期望它能够工作。

另外,用 n 个弹出窗口(其中 n = 过期书籍的数量)轰炸用户可能是个坏主意。

也许使用size函数:

alert( "You have " + $(".overdue").size() + " books overdue." );

【讨论】:

  • 没关系。花一些时间在 JQuery 网站上阅读他们的文档。最终会发生什么是有道理的。
【解决方案2】:

不要这样做,但你会这样做:

$(".overdue").each(function() { 
    alert("Your book is overdue"); 
});

我说“不要这样做”的原因是,在我看来,没有什么比无法阻止的重复弹出窗口更让用户烦恼。相反,只需使用 length 属性并让他们知道“您有 X 本书逾期”。

【讨论】:

  • 惹恼用户是客户想要的。
【解决方案3】:

对于每个使用 JQuery 的作品,如

$(<selector>).each(function() {
   //this points to item
   alert('<msg>');
});

对于弹出窗口,JQuery 在 UI 库中还有一个对话框小部件:http://jqueryui.com/demos/dialog/

看看,效果很好。

HTH。

【讨论】:

  • 使用 jQuery-UI 的好选择。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-16
  • 2015-02-15
  • 2019-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多