javascript - 冒号( :), 可以是……什么意思?类似于equal(=)?

标签 javascript jquery

不包括 ":this()""if()" 内语句,可能意味着 ":"运营商?

在下一个示例中,有点无关紧要,我想在 <a href> 的集合中查找链接,两件事之一:

  • 所有没有“.ib-content”类的项目;
  • 第一个<span>里面所有 <a href>发现符合标准的链接具有“objToWhom_Id”(函数传递的 var)是文本。

例如,在这段代码中:

init_stuff = function(objToWhom_Id) { 
   $ibItems        = $ibWrapper.find('div.ib-main > a');
   $ibImgItems     = $ibItems.not('.ib-content');

   if(objToWhom_Id == "allHTMLitems"){
       imgItemsCount = $ibImgItems.length;
   }else{
       ++imgItemsCount;
       //Here we are; notice the ":"
       $ibImgItems : $ibItems.find('span:first').filter(':contains(objToWhom_Id)');
       //
       console.log($ibImgItems.html();
   }
}

一切正常('init_stuff()' 函数被延迟,顺便说一句)...

但是如果我们将上面这行改成:

       $ibImgItems = $ibItems.find('span:first').filter(':contains(objToWhom_Id)');

这应该是合理的事情,不再起作用了...... :-P

有什么帮助吗?


已编辑

要测试“:”是否有效,您可以在 init_stuff() 内向指向的对象添加(实际上主要的东西有!)一个事件就在最后:

$ibImgItems.bind('click.ibTemplate', function(clik_$ibImgItem) {
    clik_$ibImgItem.preventDefault();
    openItem($(this));
    return false;
});

它有效,@Hans! ;-)

最佳答案

: 运算符不应该在这里做任何事情,除非确保该行失败。我感觉您的线路无法正常工作,并且在您将 : 替换为 = 运算符时开始工作。

好像还有一个错误:

$ibImgItems = $ibItems.find('span:first').filter(':contains(objToWhom_Id)');

将此更改为:

$ibImgItems = $ibItems.find('span:first').filter(':contains(' + objToWhom_Id + ')');

这是否能解决问题?

编辑:进一步回答您的问题:: 等于 = 的一种情况是在对象文字语法中:

var object = { property: value, someOtherProperty: someOtherValue };

关于javascript - 冒号( :), 可以是……什么意思?类似于equal(=)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21431854/

相关文章:

javascript - PHP AJAX POST 多个同名

javascript - 使用集合过滤事件

javascript - 如何将 JavaScript 源数据添加/附加到现有的 DataTables 表中?

jquery - 加载时更改 Ladda Bootstrap 按钮的标签文本

javascript - 如何从 location.search 获取特定参数?

Javascript 倒数计时器重复和重复计数总数

javascript - $ 在 JQuery 中意味着什么

jquery - 如何处理日期选择器控件?

javascript - Django-JS : How to display the first PDF page as cover

javascript - Div 根据 <select> 菜单改变