2012-02-17 48 views
1

我使用的是流行的图像选择jQuery插件imgAreaSelect - http://odyniec.net/projects/imgareaselect防止多重图像选择使用jQuery imgAreaSelect

页面可以有任意数量的图像,所以我已分配类的图像,使所有的代码其中。

$('img.select').imgAreaSelect({ 
... 
}); 

的问题是,一旦选择已经在我想,以防止在页面上的剩余图像正在取得另一个选择图像中的任意1发。基本上我正在寻找除了我选择的图片之外的所有图片的插件。

我也希望能够在使用我已经保存了一些COORDS再次点编辑的选择,所以这是实例API进来 - http://odyniec.net/projects/imgareaselect/usage.html#api-methods

我会因此被看沿线做点事

var select1 = $('img.select1').imgAreaSelect({ 
... 
}); 

var select2 = $('img.select2').imgAreaSelect({ 
... 
}); 

etc 

问题是没有定义数量的图像。我可以使用类似$('img.select').each()的东西吗?尽管如此,仍然没有帮助附加一个数字。我认为设置api实例部分将有助于解决我的第一个问题。

我的问题是,我怎么能动态地创建一个imgAreaSelect实例页面上的每个IMG与类的选择(也可能有附加到它(我已经存储在name attr)使用一个数字)和时选择图像会禁用页面上的所有其他实例?谢谢!

回答

1

好的,所以我用.each()去遍历每个图像并将imgAreaSelect的实例添加到数组中。从那里我可以打电话给我需要的任何图像。

var images = {}; 
var i = 1; 
$('img.select').each(function(){ 
    images[i] = $('img.select.' + i).imgAreaSelect({ 
    ... 
    }); 
    i++; 
}); 

它可能不是最好的或最有效的方式...虽然看起来很整洁。仍然接受建议。