gpt4 book ai didi

javascript - 在 JQUERY 函数中传递值的问题

转载 作者:行者123 更新时间:2023-11-30 17:01:32 25 4
gpt4 key购买 nike

在一些帮助下,我用 JQUERY 编写了这个:

   $('id').clickToggle(addMarker, destroyMarker);

其中 clickToggle 是调用 addMarker 和 destroyMarker 函数的函数。

这是 clickToggle() 函数:

 $.fn.clickToggle = function(func1, func2) {

var funcs = [func1, func2];
this.data('toggleclicked', 0);
this.click(function() {
var data = $(this).data();
var tc = data.toggleclicked;
$.proxy(funcs[tc], this)();
data.toggleclicked = (tc + 1) % 2;
});
return this;
};

而 addMarker() 函数是

var addMarker = function(){ ....}

我在 JQUERY 中没有那么多 xp。我想要做的是在 addMarker() 函数中传递一个变量。我的代码编写方式如何实现?

最佳答案

这里有一个演示会非常方便:

jsfiddle demo

HTML

<div id="myid">click me</div>

Javascript/jquery

 $.fn.clickToggle = function(func1, func2) {

var funcs = [func1, func2];
this.data('toggleclicked', 0);
this.click(function() {
var data = $(this).data();
var tc = data.toggleclicked;
$.proxy(funcs[tc], this)();
data.toggleclicked = (tc + 1) % 2;
});
return this;
};
//lets pass the strings "world" and "foo" to addMarker and destroyMarker
$('#myid').clickToggle(function(){addMarker("world")}, function(){destroyMarker("foo")});

//pass a variable as a parameter to the functions
var addMarker = function(x){ alert("addmarker "+x)}
var destroyMarker= function(x){alert("removemarker "+x)}

关于javascript - 在 JQUERY 函数中传递值的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28741891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com