2012-07-30 103 views
0
  1. 这个例子中的domEle是什么?我可以在jQuery.com中看到一个解释 - jQuery.each(collection,callback(indexInArray,valueOfElement)),但仍然很难理解什么是“valueOfElement”?有人可以为我清除一点吗?我在学习时遇到的jQuery问题(初学者)

    $("button").click(function() { 
        $("div").each(function (index, domEle) { 
        $(domEle).css("backgroundColor", "yellow"); 
        if ($(this).is("#stop")) { 
         $("span").text("Stopped at div index #" + index); 
         return false; 
        } 
        }); 
    }); 
    
  2. ,如果我会写这样的:$("input[name='newsletter']").next().text(" is newsletter"); jQuery将只查找精确匹配,如果我这样写:$("input[name$='newsletter']").next().text(" is newsletter"); jQuery将找到精确匹配,可以说,“简报”太的价值?

  3. 作者使用此代码:

    $(document).mouseup(function(e) { 
          if($(e.target).parent("a.signin").length==0) { 
           $(".signin").removeClass("menu-open"); 
           $("fieldset#signin_menu").hide(); 
          } 
         });  
    

    隐藏下拉每当用户按下其他地方上的文档。有人可以评论这条线if($(e.target).parent("a.signin").length==0) {,因为我不完全明白我们在这里做什么。原文在这里:http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/

  4. 我应该知道的默认方法调用?

在教程之一,我发现了这样的评论:

“最后,如果我们不包括在CSS保证金,CSS的方法调用的结果是自动,不会解析正常,所以我们需要用数字0"

var top = $('#comment').offset().top - parseFloat($('#comment').css('marginTop').replace(/auto/,0)); 

可以在这个人的评论来代替文字“自动”,因为我不完全理解他在这里做。

在这里原创文章:http://jqueryfordesigners.com/fixed-floating-elements/

+1

你应该打破个别问题中的一系列问题。每个问题都会有自己的答案。以这种方式询问大量问题很难得到正确的答案。 – 2012-07-30 14:40:50

回答

0

1.)$(“div”)将选择页面上的每个div。每个将遍历所有这些div。对于每次迭代,domEle都将成为循环当前正在迭代的div的引用。

2.)^ =是您要查找的内容,^ =以给定字符串开头搜索所有内容。 $ =搜索以给定字符串结尾的所有内容:http://api.jquery.com/category/selectors/

3.)e.target是用户点击的地方。 .parent(“a.signin”)。length == 0选择父类,如果它是类.signin的锚。检查等于零的长度等于询问是否选择了任何东西。所以基本上,如果用户没有在类别登录的锚点中点击,那么做一些事情。 4)$('#comment')。offset()。top获得#comment元素顶部的偏移量。 parseFloat($('#comment').css('marginTop').extension(/ auto /,0))从元素顶部获得边距。如果边距设置为“自动”,则认为边距为0. Parsefloat确保将其作为数字进行处理,然后从顶部偏移量中扣除。这是自定义代码,不是经常使用/需要的东西。

1

1)它是迭代的元素 - 目前正由each处理的元素。它会自动转发到回调。 (我不喜欢这种模式;我个人更喜欢在each回调中使用$(this))。

2)第一查找元素,其name属性恰好newsletter,而后者发现一个元素,其name属性newsletter结束。 $的使用是从正则表达语法中借用的。 (正则表达式是一个完全独立的主题)。

3)这是一个事件委托的例子(虽然不是一个很好的例子 - jQuery可以比这个例子更有效地处理这个问题)。事件代表团肯定是要看的东西。

您提到的那一行询问事件的触发元素 - 触发事件的元素 - 并检查其父对照条件。

4)我甚至不会在这一点上花费任何精力 - 它非常不标准,并且本地化为特定用例。

+0

+1,因为你设法回答所有4个问题,总共4票。无论如何,我会为Q4提供一个答案:它只是将元素相对于文档顶部的位置减去其“marginTop”。 – 2012-07-30 14:46:29

+0

哈哈我在写近距离投票的时候,我正在忙着写作。我个人对于分组问题(他们非常小)没有问题,但我知道有些人不同意。 – Utkanos 2012-07-30 14:47:34