Javascript JQuery:如何命名click函数?
我有一个脚本,我需要能够命名我的一些匿名点击功能。例如,下面是一些代码: 文件准备就绪:Javascript JQuery:如何命名click函数?,javascript,jquery,Javascript,Jquery,我有一个脚本,我需要能够命名我的一些匿名点击功能。例如,下面是一些代码: 文件准备就绪: $(function(){ $('#map').imagemap([ {top_x: 1,top_y: 2,bottom_x: 290,bottom_y:380,callback: #id1 anonymous function}, {top_x: 275,top_y: 2,bottom_x: 470,bottom_y:380,callback: #id2 anonymou
$(function(){
$('#map').imagemap([
{top_x: 1,top_y: 2,bottom_x: 290,bottom_y:380,callback: #id1 anonymous function},
{top_x: 275,top_y: 2,bottom_x: 470,bottom_y:380,callback: #id2 anonymous function},
{top_x: 460,top_y: 2,bottom_x: 701,bottom_y:380,callback: #id3 anonymous function}
]);
$('#id1').click(function() {
....
});
$('#id2').click(function() {
....
});
$('#id3').click(function() {
....
});
...
});
如何编写回调,以便不必在
文档之外重复代码。就绪
?我在回调:
之后尝试将其全部内联,但没有成功。那么,我应该用什么来代替我的匿名函数回调调用呢?听起来好像你想让单击函数使用一个命名函数,该函数可以从代码中的其他地方调用。如果是这样,只需在jqueryready函数之外定义函数,并在方法中按名称使用它们
function id1_click() { ... }
function id2_click() { ... }
function id3_click() { ... }
$(function(){
$('#map').imagemap([
{top_x: 1,top_y: 2,bottom_x: 290,bottom_y:380,callback: id1_click },
{top_x: 275,top_y: 2,bottom_x: 470,bottom_y:380,callback: id2_click },
{top_x: 460,top_y: 2,bottom_x: 701,bottom_y:380,callback: id3_click }
]);
$('#id1').click(id1_click);
$('#id2').click(id2_click);
$('#id3').click(id3_click);
...
});
function id1Click() {
...
}
...
$(function() {
$('#id1').click(id1Click);
});
而不是像您的示例中那样使用匿名函数
$('#id3').click(function() {
....
});
您可以在其他地方定义函数并使用该函数
$('#id3').click(myClickCallback);
function myClickCallback{
...
}
这些功能是相同的还是不同的?它们是三种不同的点击功能。这就是我想要的。谢谢JaredPar。@shummel7845-请确保您接受@JaredPar的答案(单击他答案左侧的复选标记)。这给了他在社区中的声誉,也帮助其他人很容易找到答案,如果他们有相同的问题。谢谢为什么他们让我们等着接受呢?有时这就是我不接受的原因(或者如果他们没有提供答案)。@shummel7845我认为这是为了解决“西方最快的枪”问题。谢谢你的详尽回答,但贾里德抢先回答了。