+ JavaScript の質問用スレッド vol.70 +

このエントリーをはてなブックマークに追加
952Name_Not_Found:2009/05/19(火) 19:46:36 ID:???
悪い子ね jsisjs
953Name_Not_Found:2009/05/19(火) 20:13:43 ID:???
>>943
あちこちのJSスレにいてワロタw
954Name_Not_Found:2009/05/19(火) 21:54:53 ID:???
悪い子でいいの。良い子の合言葉 hello world
955Name_Not_Found:2009/05/19(火) 21:58:23 ID:???
hell work
956Name_Not_Found:2009/05/19(火) 22:03:57 ID:???
ふぅ、アレじゃないのか、助かったぜ・・・・
957Name_Not_Found:2009/05/19(火) 23:35:46 ID:???
ボタン1を押すとボックス1がブラインドダウンして出現
ボタン2を押すとボックス2がブラインドダウンして出現
ボタン3を押すとボックス3がブラインドダウンして出現というのを
Spryを使用して作成したのですが
ブラインドダウンする関数をいちいち3つ作成したのですが
これを一つにまとめるようなスマートなプログラミングはできますか?
958Name_Not_Found:2009/05/19(火) 23:37:05 ID:???
それなら作成したものを見せてもらおうか
959Name_Not_Found:2009/05/19(火) 23:59:48 ID:???
うそついてますた。jsisjs
960Name_Not_Found:2009/05/20(水) 00:17:28 ID:???
>>958
省略するとこんな感じですが
もっと記述量を減らすようなスマートな書き方はできないですかね?

window.onload = init;
function init() {
BlindDownA = new Spry.Effect.Blind("box1",
{duration: 1000,
from: "0%",
to: "100%"}
);
BlindDownB = new Spry.Effect.Blind("box2",
{duration: 1000,
from: "0%",
to: "100%"}
);
BlindDownC = new Spry.Effect.Blind("box3",
{duration: 1000,
from: "0%",
to: "100%"}
);

document.getElementById("id1").onclick = BlindDownBoxA;
document.getElementById("id2").onclick = BlindDownBoxB;
document.getElementById("id3").onclick = BlindDownBoxC;
961Name_Not_Found:2009/05/20(水) 00:27:42 ID:???
var builder = function(id) {
 return new Spry.Effect.Blind(id, { duration: 1000, from: "0%", to: "100%"});
};
BlindDownA = builder("box1");
962Name_Not_Found:2009/05/20(水) 01:37:08 ID:???
>>961
ありがとうございます
それを3つ記述する(box1、box2…)のが一番スマートなやり方
なんですね
963Name_Not_Found:2009/05/20(水) 02:26:50 ID:???
javascriptってさ、
大文字と小文字の区別をするのがウザイよね。
964Name_Not_Found:2009/05/20(水) 02:34:58 ID:???
>>963
JavaScript って書けよ、ゆとり。
965Name_Not_Found:2009/05/20(水) 02:36:07 ID:???
漢字でも使っとけ
966Name_Not_Found:2009/05/20(水) 04:02:47 ID:???
Math.random()
の、
()
の中には、通常、何を入れるの?
967Name_Not_Found:2009/05/20(水) 04:12:41 ID:???
ランダムの幅じゃない?
968Name_Not_Found:2009/05/20(水) 04:14:07 ID:???
何も入れない

他言語ではシードを引数にとる場合もあるかも
969Name_Not_Found:2009/05/20(水) 05:37:16 ID:???
(i)
970Name_Not_Found:2009/05/20(水) 05:40:50 ID:???
遠慮せず好きなもん入れとけ
971Name_Not_Found:2009/05/20(水) 05:50:06 ID:???
>>970
こうですか?
(愛情)
972Name_Not_Found:2009/05/20(水) 05:51:59 ID:???
(気合い)
973Name_Not_Found:2009/05/20(水) 10:44:15 ID:???
新スレ(ちょっと早かった,,,)
http://pc11.2ch.net/test/read.cgi/hp/1242782347/l50
974Name_Not_Found:2009/05/20(水) 11:10:53 ID:???
>>943
マルチ乙
975Name_Not_Found:2009/05/20(水) 11:10:53 ID:???
複数のdeleteを一発で実行できますか?
delete (a[1],a[3])とか思い付きでやってもできません。
976Name_Not_Found:2009/05/20(水) 12:48:50 ID:???
(function(props){for(i in props)delete props[i]})([a[1],a[3]])
やった!一発だぜ!
977Name_Not_Found:2009/05/20(水) 14:06:52 ID:???
>>962
間違いを言うつもりはないがテキトーに答えてるから鵜呑みにすんなよw
そもそもセンスが絡む部分だからどれが一番とは決めがたい

var builder = function(id, box) {
 document.getElementById(id).onclick = new Spry.Effect.Blind(box, { duration: 1000, from: "0%", to: "100%"});
};

ここまでは異論はないと思うが

var label = [{id: "id1", box: "box1"}]
for (var i = 0; i < label.length; i++) {
 builder(label[i].id, label[i].box);
}

これは数がある場合ならともかく3個程度ならやりすぎ
だから一番は自分で決めれ
978Name_Not_Found:2009/05/20(水) 16:48:16 ID:yjX/LFjd
DOMでテキトウフィールドの値を取得する場合ですが、nodeValueでうまく
取れないときがあります。テキトウフィールドにはinnerHTMLが使えるよ
うになりますか。
979Name_Not_Found:2009/05/20(水) 16:52:13 ID:???
テキトウフィールドについて詳しく
980Name_Not_Found:2009/05/20(水) 16:59:45 ID:???
>>979
> テキトウフィールドについて詳しく
読み直して仕事中に吹いたじゃねーかw
981Name_Not_Found:2009/05/20(水) 17:02:34 ID:???
うふぃっ!
982Name_Not_Found:2009/05/20(水) 17:56:56 ID:???
>>975
a.splice(1, 3, undefined, a[2], undefined);
983Name_Not_Found:2009/05/20(水) 18:56:42 ID:???
それundefinedを代入しちゃうだろ
984Name_Not_Found:2009/05/20(水) 20:27:35 ID:???
>>977
for(var i = 0; i < label.length; i++)
より
for(var i in label)
のほうがきれい
985Name_Not_Found:2009/05/20(水) 20:44:41 ID:???
>>984
この例でなら妥当だしわかってて使う分にはかまわないけど
Arrayにfor-in使うのには罠があるからお勧めは出来ない
986Name_Not_Found:2009/05/20(水) 20:45:37 ID:???
>>984
「きれい」かどうかよりそれはものすごく危険なのでは?
987Name_Not_Found:2009/05/20(水) 20:49:48 ID:???
>>984がPrototype.jsなんか使っていないことを祈る
988Name_Not_Found:2009/05/20(水) 20:50:43 ID:???
>>984
おそらく意味もわからず使ってるんだろうな
989Name_Not_Found:2009/05/20(水) 21:00:18 ID:???
990Name_Not_Found:2009/05/20(水) 23:27:30 ID:???
時代はforEach()
991Name_Not_Found:2009/05/20(水) 23:39:14 ID:???
>>985
日本語でおk
992Name_Not_Found:2009/05/21(木) 00:16:21 ID:???
>>991
うん。このスレはオブジェクト指向も知らねえバカばっか、ってことを
みごとに露呈してるよなw
993Name_Not_Found:2009/05/21(木) 00:30:14 ID:???
jsスレでオブジェクト志向とかw
994Name_Not_Found:2009/05/21(木) 02:53:10 ID:???
jsは関数型言語に決まってるよなw
995Name_Not_Found:2009/05/21(木) 02:56:09 ID:???
プロトタイプだろ?
996Name_Not_Found:2009/05/21(木) 02:57:47 ID:???
インタプリタだお
997Name_Not_Found:2009/05/21(木) 03:03:50 ID:???
ノイマン型ですわ。
998Name_Not_Found:2009/05/21(木) 03:29:31 ID:???
ラムダ言語でちゅ。
999Name_Not_Found:2009/05/21(木) 05:59:45 ID:???
ume
1000Name_Not_Found:2009/05/21(木) 06:05:34 ID:???
1000
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。