我写了这段代码:
var idImg = 'something';
$('#'+idImg).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)();
funcs[tc].call(this);
data.toggleclicked = (tc + 1) % 2;
});
return this;
};
addMarker()是一个需要获取变量idImg的函数。
如何在addMarker函数中传递全局变量idImg?
由于
EDITED
$(document).ready(function(){
$('img').hover(function() {
var idImg = $(this).attr('id');
$('#'+idImg).clickToggle(addMarker, destroyMarker);});
});
$.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;
};
var addMarker = function(){ alert(idImg)} <-- I WANT THIS
var destroyMarker = function(){
DO SOMETHING ELSE
};