+ JavaScript の質問用スレッド vol.72 + >>950 なるほど文字列、わかりました。ありがとうございます。
>>951 言語仕様を読めば分かることだけど、ラベル指定のみですね。
訪れた覚えの無いサイトも表示されてる
>>956 ありがとうございます。取れてしまうんですね。
次スレは975越えたら。MSDNは直すとして、データフォーマット の紹介はどうする?何を入れるかとか議論してないので持ち越しかな。
>>945 ECMA262-3では、$は機械生成コードであることを意味する
テンプレートから動的生成とかドキュメント生成など
だがこの規約を守っているライブラリはほとんどないので
ECMAScript5でこの規約は削除された
よし!
slice,substring,substrメソッドの違いがわからん
負数指定で比較してみれ。 IE6はどれか対応してない。
substrは非公式だから忘れていい substringは負数が扱えない代わりに、引数の大小を問わない alert("JavaScript".slice(0,-6)); // "Java" alert("JavaScript".substring(0,-6)); // "" alert("JavaScript".slice(4,0)); // "" alert("JavaScript".substring(4,0)); // "Java"
964 :
Name_Not_Found :2009/09/07(月) 16:06:34 ID:pNchJXM4
>>963 >substrは非公式だから忘れていい
substrが非公式だってことはよく忘れるw
どちらも意外と遅いんだよなぁ ループするならexecでpushした方が良いんじゃねーかってくらいに。
iFrameのスクロール情報って親ページからは取得できないんですか? イメージとしては<iframe onscroll="***">みたいのを実現したいのですが。
967 :
Name_Not_Found :2009/09/08(火) 01:28:12 ID:3eviFrTF
>>963 >substrは非公式だから忘れていい
substrは非公式だが忘れられない
非同期処理を同期させる方法を調べていたら、以下の様なコードを見つけたのですが、 (たぶんshindigのコードだと思います。) callAsyncAndJoin=function(funcs, cont, opt_this) { var pending = funcs.length; var results = []; for (var i = 0; i < funcs.length; i++) { var wrapper = function(index) { funcs[index].call(opt_this, function(result) { results[index] = result; if (--pending === 0) cont(results); }); }; wrapper(i); } }; funcsに同期させたい関数の配列を代入すると処理完了時にcontを実行するというようなことが説明に書いてありました。 しかしこれを使おうとしても、firebugで funcs[index].call is not a function と言われてしまいます。どなたか使い方が分かる人もしくは非同期処理をうまいこと同期処理っぽくする方法がありましたら教えてください。
>>968 エラー通りfuncsの中身がおかしいんだと思うけど
funcsの由来(callAsyncAndJoin呼び出ししてる部分等)がないからわからん
firebugでfuncsをウォッチしてみたら?
970 :
Name_Not_Found :2009/09/08(火) 04:13:58 ID:21pQrGfX
>>969 ありがとうございます。
初心者なものでJSのfunctionの使い方があんまりよく分かってないんですけど、
funcs[index].call()というのは、引数で与えた関数を順番に実行してる部分ですかね?
そうすると、.call()というのはメソッドになるのかな?ということは、引数として要求するfuncには特別な仕様が求められているんでしょうか。
firebugで監視しながらもうちょっと弄ってみます。
★index.html <script src="js/prototype.js" type="text/javascript"></script> <script src="js/index.js" type="text/javascript"></script> <h2 id="content_swf">ここに出したい</h2> ★indez.js onload = init; function init() { swfLoad(); } function swfLoad(){ $("content_swf").innerHTML = '<img src="../images/top_image01.jpg">'; } index.htmlが読み込まれた時に指定の場所にタグを書き出したいんですが 上手くいきません。良い方法はありますか。
972 :
971 :2009/09/08(火) 05:52:25 ID:???
★indez.js → ★index.js です。
コンストラクタ関数はおいといて、 関数ってmath関数だけ? ほとんどメソッドとプロパティ形式で呼び出すのかな。
974 :
Name_Not_Found :2009/09/08(火) 07:42:34 ID:21pQrGfX
>>971 別にそれでうまく読み込めるけど
prototype.jsのパス、画像のパスが間違ってないか確認したら?
975 :
Name_Not_Found :2009/09/08(火) 09:35:07 ID:Qhjga5vA
無視
976 :
Name_Not_Found :2009/09/08(火) 12:28:16 ID:QElxcOuO
substrみたいに非公式のものをまとめたサイトってありませんか?
当たり前に使っているwindowさえ非公式じゃなかったっけ? HTML5が確定すればだいぶマシになるんだろうけど。
Canvasってこれからも進化していくのか、 新しい規格が誕生してしまうのか微妙なところだな
prototype.jsとか使っていて、CSS上のidが複数あっても内容書き換え(innerHTML)とかでちゃんと動くけど。 やっぱりCSSのidが同じものが複数あるのはまずい? もちろんCSS的にまずいことは分かってるけど、楽ちん出来るんだよね・・。
>>970 functionは全てFunctionオブジェクトのインスタンスで
Function.prototype.callが存在するから、なにもしなくてもcallはある
つーかそのぐらいは単純な例を書いて試しせばいいんだよ
var x = [ function () { alert("foo"); } ];
x[1] = function () { alert("bar"); };
function baz() { alert("baz"); }
x[2] = baz;
for (var i = 0, l = x.length; i < l; i++) { x[i].call(); }
だから呼び出し側の凡ミスだろうけど晒してくれないんじゃわからん
>>973 コンストラクタのプロパティ(クラスベースでいうクラスメソッド)は
StringやらDateやらにもある
>メソッドとプロパティ形式で呼び出す
グローバルは全てグローバルオブジェクトに格納されるから
厳密には、いわゆる「関数」は存在しない(例えばalertもwindow.alertの省略形)
せいぜいローカル変数にいれたfunctionぐらい
>>976 標準であるECMAやDOMを調べた方が早い
>>979 HTML的にダメ、つーかスレチ
981 :
979 :2009/09/08(火) 17:56:09 ID:???
>>980 レスありがとう。
xhtml+css的に問題あるのは分かるけど、JS的にはどうなのかなぁと思って。
動けばいいってもんじゃねぇって答えは大体分かってるんだけどねw
HTMLのidはIdentificationの略だから Identification ━━ n. 同一であるとすること, 同一性の確認; (死体, 罪人などの)身元確認; 身分証明(となるもの); 識別; 一体化, 同一化 ((with)).
>>981 それは無知初心者が書いたページ用の、ブラウザによる寛容動作だろ
>>981 既に存在していると上書きされるから最後に読み込まれたものが選択されるんじゃないかな
HTMLでダメならそれに基づいたDOMもダメで、DOMを使ってアクセスしてるJSもダメ XHTMLとは違ってHTMLは緩いからエラーでないだろうけど どの要素を受け取れるかすら保証はされない 実装の都合で、どうやってアクセスしても最初の要素しか出てこないとか アクセスするたびに別の要素が出てくるといったことが起きても不思議はない
>>985 > XHTMLとは違ってHTMLは緩いからエラーでないだろうけど
JavaScript 側ではどっちでもエラーは出ないが
XHTML/HTML どちらでも Validator ではエラー
つまり
> HTMLでダメならそれに基づいたDOMもダメで、DOMを使ってアクセスしてるJSもダメ
に引っかかるからそもそもダメ
DOMとvalidatorは関係ない 木構築にDTD/Schemaが必要となればSGMLに逆戻り HTML5はエラー対策のために敢えて逆戻りしているが
validでないHTMLだとDOMツリーが定義できるかどうか 分からないじゃん。だから動作するとしても「たまたま」 「次のバージョンのブラウザではどうなるか分からない」 というしかないよね。
l50くらい取ってもいい気がします
>>982 うん、どう見てもそれは知った上で言ってるでしょ・・
window.onload=test(); みたいに、なんで()つけちゃいかんの?・・
>>993 ()を付けたらtest関数を実行した戻り値を代入することになるから
埋め
埋め
埋め
このスレは1000の風になりました
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。