のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,442,012人
昨日:no data人
今日:
最近の注目
人気の最安値情報

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
101 : Name_Not - 2011/03/31(木) 23:28:29.04 ID:??? (+27,+29,-30)
JavaScriptでデザインパターンも組めない素人ばっかりなのかここ
103 : Name_Not - 2011/03/31(木) 23:43:30.36 ID:??? (+22,+29,+0)
効率悪すぎだろそれ
104 : Name_Not - 2011/03/31(木) 23:45:01.26 ID:??? (+8,+10,-4)
JavaScriptでのデザインパターンってどんなのがあるんだ?
106 : Name_Not - 2011/03/31(木) 23:48:38.51 ID:??? (+26,+29,-24)
デザインパターンは、アルゴリズムや設計思想に
名前を付けて伝達性を向上した事に意味があるんであって、
それ以上の効果を期待すると肩透かしを食らうぞ。
107 : Name_Not - 2011/03/31(木) 23:49:47.87 ID:7/K68nMp (-16,+29,-5)
>>106
>伝達性を向上した事に意味があるん

ああ、うまいこというなあ
たしかにそうだよな
108 : Name_Not - 2011/03/31(木) 23:50:48.21 ID:??? (-24,-30,-69)
>>94
とりあえず下のようにしときゃ動くんじゃね?

obj._hoge; // private的な変数
obj.__defineSetter__("hoge",function(x){
//なんか処理
 this._hoge = x;
});
obj.__defineGetter__("hoge",function() {
return this._hoge;
});
109 : Name_Not - 2011/03/31(木) 23:59:51.22 ID:??? (+23,+23,-67)
>>108
いやエラーにはならないけどさ、、、

フック処理を追加したあとも
obj.hogeに値が設定されててほしいのさ

グリモンでプロパティの設定の瞬間をフックしたいだけで
元のオブジェクトの互換性は保ちたいわけで
110 : Name_Not - 2011/04/01(金) 00:03:01.99 ID:??? (-29,-30,-232)
>>94
obj.fuga = obj.hoge;
obj.__defineSetter__('hoge',function(x){this.fuga = x})
obj.__defineGetter__('hoge', function(){return this.fuga})

これじゃ、駄目なのかに?


そもそも、Chromeでだけど

obj.hoge = 'a';
obj.__defineSetter__('hoge',function(x){});

とすると、obj.hogeを評価しても undefined が帰ってくる
たぶん、obj.__defineSetter__でセッタを設定した時点で、obj.hogeが上書きされてアクセスできなくなってしまう。
なので、もともとのobj.hogeはどこか別のところに保存する必要があり、上のようなコードがどうしても必要になるのでは。
111 : Name_Not - 2011/04/01(金) 00:25:05.03 ID:??? (+41,+29,-62)
>>60
ありがとうございます。
そこまでは理解できました。

最終的に作りたいものでは、画像を動的に変更したいと思ってるので
関数から画像のDOMオブジェクトを返して、それをHTMLの文字列にする方法を知りたいです。
112 : Name_Not - 2011/04/01(金) 00:46:00.87 ID:??? (-23,-29,-51)
>>95
タイミングの利点は認めるけど、パフォーマンス重視でdocument.writeを選択する必然性はないような。
パフォーマンスよりも利便性をとる人がdocument.writeを使うものだと思ってた。
114 : Name_Not - 2011/04/01(金) 01:02:41.65 ID:??? (+28,-30,-117)
>>111
個人的な好みも入るけど、jQueryを使うのなら、なるべく徹底的に使いたい(速度的にはデメリットがあるけどね)。
そういうところも含めて、オレならこう書くかな。

var uri1 = '';
var uri2 = '';

var $p = $('<p />').appendTo('#view');
var $img = $('<img />').addClass('test').attr('src', uri1).click(function(){$(this).attr('src', uri2)});
$p.append($img);
115 : Name_Not - 2011/04/01(金) 09:45:36.82 ID:??? (-27,-30,-53)
var foo = new Foo();
foo.bar().baz().qux().quux();
みたいな感じで次々メソッドを追加していくようにできませんか?
それぞれのメソッドはfooに対して処理を行うようにしていのですが。
117 : Name_Not - 2011/04/01(金) 09:51:25.44 ID:??? (-27,-30,-113)
すいません自己解決しましたreturn thisで。いいのかなこれで・・・。
function Foo() {
this.elm = document.getElementById('box');
}
Foo.prototype = {
foo: function(str) {
alert('foo');
return this;
},
bar: function(str) {
alert('bar');
}
}

window.onload = function() {
var f = new Foo();
f.foo().bar();
}
118 : Name_Not - 2011/04/01(金) 14:13:57.71 ID:iyym9zmv (+9,+24,+0)
あってるよ
119 : Name_Not - 2011/04/01(金) 16:29:53.69 ID:??? (+29,+27,-45)
画像Aをクリックしたときに画像Bに切り替わるようにしたいと思います
スムーズに切り替えたいので画像Aを読み込むときに一緒に画像Bも読み込んでおきたいのですが
どのような方法でできるのでしょうか?
cssで画面領域外に飛ばすっていう方法以外を模索しています
127 : Name_Not - 2011/04/01(金) 19:32:07.69 ID:??? (+6,+29,+0)
>>126
それなら>>122と同じジャン
130 : Name_Not - 2011/04/01(金) 20:01:03.77 ID:??? (+9,+21,+0)
できねえよks
133 : Name_Not - 2011/04/01(金) 20:26:23.92 ID:??? (+26,+29,-11)
>>121はガラケーじゃだめなのか?
そもそもガラケーサイトでJS使おうとは思わんからな
135 : Name_Not - 2011/04/01(金) 21:43:16.06 ID:??? (-26,-29,-53)
JQUERY の append で書いたタグに対して
$(".test").click でキャッチ出来ないのですが、
append で書いたタグに対してイベントをキャッチするにはどうしたら良いのでしょうか?
137 : Name_Not - 2011/04/01(金) 21:51:27.23 ID:??? (+27,+29,-9)
この質問多いよな、なんで順番が理解できないのか
140 : Name_Not - 2011/04/02(土) 00:33:17.74 ID:0SBtU03k (+21,+26,-45)
sprintf手作りするのって、結構以前から定番だったよね
%dとかの実装が面倒で投げ出したりとか
141 : Name_Not - 2011/04/02(土) 01:38:12.78 ID:??? (-29,-30,-163)
Bookmarklet でhttp://network-tools.com/ の ping と trace のページを、
新しいウィンドウで、現在開いているページのホスト名を渡して開きたいんですが、
「現在開いてるページのホスト名」部分ってどうやって取得すればいいでしょうか?
もしくは、現在開いているページのアドレスから、http:// を除いたもの、でもいいです。

具体的には、実行すると新しいウィンドウで、

http://network-tools.com/default.asp?prog=ping&host=[ホスト名]
http://network-tools.com/default.asp?prog=trace&host=[ホスト名]

というページが開くような Bookmarklet を書きたい、と思っているんですが・・・
146 : Name_Not - 2011/04/02(土) 02:41:13.16 ID:??? (-23,-29,-105)
ソースで順番に書いてるから順番に実行されるものではない。 という解釈?
10年ぶりの JavaScript だから (もちろん jQuery は初めて弄る) 何もかもが初めて弄る感覚すぎて難しい。


やっぱり、記述の仕方を覚える前にいきなりサンプルを弄るのは無謀すぎたか。。。

とりあえず 最初の $(function(){...}); の中に入れる方が流れ的に分かりやすいので、これで対処しようと思います。


ついでなんですが、jQuery を学びやすいサイト or 書籍のオススメってありますか?
147 : Name_Not - 2011/04/02(土) 03:08:45.28 ID:??? (+12,+17,-28)
>>146
何よりもまず、本家サイトをみるべき。
http://api.jquery.com/jQuery/#jQuery3
ここに書いてある。
148 : Name_Not - 2011/04/02(土) 06:06:18.88 ID:??? (+22,+23,-49)
>>133
すまんページ跨いでのプレロードができないのと勘違いしてた
new ImageしたものをappendChildする場合は問題なく使える

>134
スムーズの意味が違うかと
エフェクト的な意味のスムーズじゃなくて読み込み無しでパッと切り替えたいって意味かと
150 : Name_Not - 2011/04/02(土) 10:50:42.86 ID:??? (+27,+29,-18)
必要に迫られてちょっと嫌々で jQuery 触ったけど、ちょっと面白くなってきた。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について