私は、ユーザーがマウスで選んだアイコンをいくつか持っています。jQueryオブジェクトを後で使用するために配列に保存するにはどうすればよいですか?
私は、この境界線を選択して設定できるこの一連のアイコンを持っています。選択したアイコンの数を5に制限します。最初に選択されたアイコンは黄色の境界になります。次の4つは黒の境界になります。 document.readyで
、私が行います
$( 'img.selectable')をクリックします(関数(){ image_click(これを);});。 HTMLの場合
.selectable { border: 3px solid #ebe6b3; float:left; margin:1px; }
:CSSについては
<img class="selectable" src="img/first_icon.png">
私はこの機能を持っている:
function image_click(e)
{
if($(e).data("clicked")=="yes")
{
images_selected--;
$(e).data("clicked","no").css('border','3px solid ' + NEUTRAL_COLOR);
if(images_selected==1)
{
$('img.selectable').not(e).filter(function() {
return $(this).data("clicked")=="yes";
}).css('border','3px solid ' + YELLOW_COLOR);
}
}
else
{
if (images_selected<5)
{
images_selected++;
if(images_selected==1)
{
$(e).data("clicked","yes").css('border','3px solid ' YELLOW_COLOR);
}
else
{
$(e).data("clicked","yes").css('border','3px solid ' + BLACK_COLOR);
}
}
}
};
は最初のアイコンがなければなりません、これはいつも黄色になります。私は、オブジェクトの順序を格納する順序配列でそれを行うことを考えていました。 私は配列からオブジェクトを呼び出すことができず、まだそれがCSS機能を保持しているようです。
私のようなものを考えていた:
$(e).data("order",clicked_img);
x[clicked_img]=e;
と、私はそれを飛び出し:
alert(x[clicked_img].data("order"));
...}
私はオブジェクトを格納いくつかの点で
image_click(e){..
内
var x=[];
BUT .... 私はもうデータにアクセスできないようです。オブジェクトがjQuery領域を去ったときのように、それはそれを失いました。データ変数にアクセスする方法がわかりません。
お願いします! ありがとう!
これはとても役に立ちました、ありがとう! – Ted