大家好,我只是想知道这个函数中的(i,val)意味着什么以及它传递了什么?
function boldToggler(itemid) {
$(itemid).css("font-weight", function(i, val) {
return val == "bold" ? "normal" : "bold";
});
}
任何帮助将不胜感激!
答案 0 :(得分:2)
如果是.css()
,function(index, value)
:
将值返回到set的函数。这是当前的元素。接收集合中元素的索引位置和旧值作为参数。
你可以在这里找到:http://api.jquery.com/css/
答案 1 :(得分:2)
来自.css( propertyName, function(index, value)
:
function(index,value) - 将值返回到set的函数。这个 是当前的元素。接收元素的索引位置 集合和旧值作为参数。
例如,假设您有以下HTML:
<div style="font-weight: normal" />
<div style="font-weight: bold" />
你执行:
$("div").css("font-weight", function(i, val) {
return val == "bold" ? "normal" : "bold";
});
function(i, val)
将针对每个div
元素执行一次。在第一次执行中,i
将为0,而val
是font-weight
属性的旧值,即normal
。在第二个中,i
将为1,而val
是font-weight
属性的旧值,即bold
。
答案 2 :(得分:1)
请参阅documentation摘录:
.css( propertyName, function(index, value) )
function(index, value)
将值返回到set的函数。这是当前的元素。接收集合中元素的索引位置和旧值作为参数。
答案 3 :(得分:0)
i和val是参数。
您可以看到该函数没有名称 - 这意味着该值本身就是函数 - http://en.wikipedia.org/wiki/Closure_(computer_science)。 http://en.wikipedia.org/wiki/Map_(higher-order_function)
因为它以“$”开头,我认为它是jQuery。 查看用于css方法的jQuery文档 - 它将哪些值传递给finction。
该方法将在函数上调用它所拥有的每个元素(这里是唯一一个具有给定ID的元素,但它可以是“所有给定类的元素”等)并使用结果。