我正在编写一个codecademy.com课程,教我如何使用jQuery构建条形图。最后一组说明是将单击事件添加到$ bar以显示其值。它解释了
匿名函数如下:
function(arg) { code }
。在这 例如,.click处理程序将使用click,click事件作为其参数, 所以你的实现应该在function(e) { alert code }
内.click()
。
这是我应该修改的功能
// Exercise 5
function addBarClickEvent($bar,value) {
// add a click event to the bar that
// pops up an alert with the bars value
$bar.click(
// your code goes here!
}
);
}
我尝试了下面显示的两种解决方案,但都没有奏效。不幸的是,该课程没有提供解决方案。谁能帮忙。
// Exercise 5
function addBarClickEvent($bar,value) {
// add a click event to the bar that
// pops up an alert with the bars value
$bar.click(
// your code goes here!
alert($bar.value) //my attempt
alert(e.value) //my second attempt
}
);
}
我收到此错误消息
确保将.click的参数定义为匿名函数 显示警报。
答案 0 :(得分:2)
假设您要显示的值是绑定时传递的值
function addBarClickEvent($bar,value) {
// add a click event to the bar that
// pops up an alert with the bars value
$bar.click(function(){
alert(value);
});
}
如果不是 -
$bar.click(function(){
// get value somehow
//$(this).data('some-value');
});
答案 1 :(得分:0)
问题告诉你到底要做什么:“你的实现应该在.click()中有函数(e){alert code}”
只需写下它所说的内容:$bar.click(function(e) { alert(this.value); }
根据实际值的位置调整this.value
- 我不知道也无法猜测;)