以下のようなスクリプトを書いたのですが、配列がずれてしまい原因がわかりません。
一つポイントがあり配列arr2の値は変動します。
つまり ['1','2','3','4']の時もあれば、 ['4','2','1','3']の時もあります。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title></title>
<style type="text/css">
.cont {
margin-bottom: 10px;
border: solid 1px #ccc;
}
</style>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">google.load("jquery", "1.4");</script>
<script type="text/javascript">
//<![CDATA[
$(function() {
var arr1 = ['test1','test2','test3','test4'];
var arr2 = ['4','2','1','3'];//この配列の値は順番が変動する。
for(var i=0; i<arr1.length; i++) {
$(".cont").eq(i).text(arr1[arr2[i]]);
}
});
//]]>
</script>
</head>
<body>
<div class="cont"></div>
<div class="cont"></div>
<div class="cont"></div>
<div class="cont"></div>
</body>
</html>
どなたかご教授頂けたらと思います。
コメント欄を有効にすると有益です。
質問の意味がわかりません。何をどうしたいのか。
javascriptの配列の添字は0からはじまるので-1してやればいいという話でしょうか?
<script type="text/javascript"> //<![CDATA[ $(function() { var arr1 = ['test1','test2','test3','test4']; var arr2 = ['4','2','1','3'];//この配列の値は順番が変動する。 for(var i=0; i<arr1.length; i++) { $(".cont").eq(i).text(arr1[arr2[i]-1]); //←ここ } }); //]]> </script>
コメント欄を有効にすると有益です。
質問の意味がわかりません。何をどうしたいのか。
javascriptの配列の添字は0からはじまるので-1してやればいいという話でしょうか?
<script type="text/javascript"> //<![CDATA[ $(function() { var arr1 = ['test1','test2','test3','test4']; var arr2 = ['4','2','1','3'];//この配列の値は順番が変動する。 for(var i=0; i<arr1.length; i++) { $(".cont").eq(i).text(arr1[arr2[i]-1]); //←ここ } }); //]]> </script>
ご回答ありがとうございます。
ありがとうございます。
arr2が '0' から始まらないのが原因です。
var arr2 = ['3','1','0','2'];
とするか
$(".cont").eq(i).text(arr1[arr2[i] - 1]);
としてみてください。
> arr2が '0' から始まらないのが原因です。
そうだったんですね。
ご回答ありがとうございます。
ご回答ありがとうございます。
ありがとうございます。