+ JavaScript の質問用スレッド vol.57 +at HP
+ JavaScript の質問用スレッド vol.57 + - 暇つぶし2ch583:Name_Not_Found
07/07/03 08:27:24
hoge1()//0
function hoge1(){
//1
hoge2()
}
function hoge2(){
//2
hoge3()
}

みたいに、今どんだけfunctionで潜ってる(?)かを調べるにはどうしたや良いのですか?

584:Name_Not_Found
07/07/03 08:32:08
URLリンク(www.red.oit-net.jp)
↑ここのjavascriptで作成された電卓をキーボードのテンキーで
入力できるように改造することは出来ますでしょうか?

585:Name_Not_Found
07/07/03 09:17:56
>>583
自作の関数だけなら、グローバル変数を1つ用意して各関数の入口で
1増やし出口で1減らすとかで数えるんじゃないの。
>>584
windowのonkeydownイベントハンドラで各キーが押されたら対応する
ボタンと同じ動作をするように手直しすればいいんじゃないの。
まあがんばって(全部は書かないけど個別に分からないところが
あれば質問どぞ)。

586:Name_Not_Found
07/07/03 12:46:30
ボタンが押されるなどのイベントが起きると、全体ではなくひとつの画像だけ更新されるようにするにはどのようにしたらいいのでしょうか?

587:Name_Not_Found
07/07/03 12:59:04
>>586
その画像がキャッシュされないようにするには、後ろに乱数をつけるとか?
document.images.画像の名前.src = '画像のURI' + '?' + Math.random();
画像ファイルは変わらず画像のURIが変わるとかなら、
後ろに何かつけたりする必要はない。

588:Name_Not_Found
07/07/03 13:11:58
>>585
> >>583
> 自作の関数だけなら、グローバル変数を1つ用意して各関数の入口で
> 1増やし出口で1減らすとかで数えるんじゃないの。
なるほど・・・

589:Name_Not_Found
07/07/03 16:37:58
text= "ab12cd";
reg_a="1[0-9]";
re = new RegExp(reg_a);
if(re.test(text)){alert("ok")}
これや
reg_a="\d";
ではok出るのに

reg_a="1\d";

reg_a="\d+";

でokが出ないのは何故なのでしょうか?

590:Name_Not_Found
07/07/03 16:43:02
>>589
ブラウザのURL欄に「javascript: alert("\d");void(0)」入れて
実行してみ。

591:Name_Not_Found
07/07/03 16:51:32
>>590
"d"となります

うーむ、正直alert("\d")が"d"を表示される事と、正規表現で\dがどのように動作するのかの関連性を理解できませんが…
これは対応していない ってことですか?

592:Name_Not_Found
07/07/03 16:54:37
>>591
だから「new RegExp("\d")」は「new RegExp("d")」と同等なの。
そしてアンタのテストデータには「d」が入っているよね。おめでとう。
「alert("\\d")」とかも試すと幸せになれるかもね。

593:Name_Not_Found
07/07/03 16:56:31
>>592
あああなーるへそ
A="\d"は内部的には"d"となっちゃうのね
A="\\d"だと内部的にも"\d"となって云々


ありがとう

594:Name_Not_Found
07/07/03 17:17:34
バカさらけ出す前にとほほでも読んで来い、ヴォケ

595:Name_Not_Found
07/07/03 17:36:52
読んだけど忘れていました^^;

596:Name_Not_Found
07/07/03 19:10:21
配列を使おうとおもうのですが、
リファレンスにかいてある、配列リテラルと、配列オブジェクト
どちらを使えばいいのでしょうか?

597:Name_Not_Found
07/07/03 19:44:31
好きなほう使えばいいと思います

598:Name_Not_Found
07/07/03 19:59:24
new Array(...)は「...」が1個でしかも数の時は
その要素数の配列ができてしまうという仕様。
[...] はそのような変わったことが起きない。
だから [...] の方を勧めるね。

599:Name_Not_Found
07/07/03 20:37:25
[...]だと「新たに配列を作る」ってことを言葉として書いてないから奨めかねる

600:Name_Not_Found
07/07/03 21:22:16
どちらも使わなければいいと思います

601:Name_Not_Found
07/07/03 21:50:05
ばか

602:Name_Not_Found
07/07/03 22:10:07
リンゴ 赤 100円
オレンジ オレンジ 70円
メロン 緑 300円
という多次元配列を作りたいのですが、

array(

603:602
07/07/03 22:13:09
途中で送信してしまった。。。すみません。

var arrayFruits = array(array("リンゴ", "赤", 100), array("オレンジ", "オレンジ", 70), array("メロン", "緑", 300);

こんな書き方はだめなんでしょうか?
ちなみにオレンジの70円
arrayFruits["オレンジ"][2](PHP風に…)をとりたいのですが、
オブジェクトを指定してくださいと言われます。

604:Name_Not_Found
07/07/03 22:16:49
array() ?

605:602
07/07/03 22:16:49
あれ・・・ちょっとおかしいですね。
PHP風だと
$arrayFruits = array(
array("リンゴ" => array("color" => "赤", "price" => 100),
array("オレンジ => array("color" => "オレンジ", "price" => 70),
array("メロン" => array("color" => "緑", "price" => 300)
);

で、
$arrayFruits["オレンジ"]["price"]ですね・・・

606:Name_Not_Found
07/07/03 22:19:01
>>603
JSONそのものだから、らくにできるだろ。

607:602
07/07/03 22:22:03
>>606
Wikipediaで調べてきました。どうもありがとうございます。
しかし不完全でみっともないPHPのコードなんて晒してすみませんでした・・・
>>605も変だ・・・しばらくやってなかったのでリハビリからはじめないと・・・

608:Name_Not_Found
07/07/03 22:27:26
リハビリというか、そろそろ4なんか捨てて5を使おうな。すれ違いだが、JSにも同じ風潮があって、このスレでもJS1.7が全く普及しない。たとえば、1.7を使えば順列列挙なんてあっさりできるのに、先月も延々と痛い議論が続いてたし。

609:Name_Not_Found
07/07/03 22:34:08
>>608
このスレで古いJavaScriptが捨てられないのならPHP4を捨てろなんて事言える立場にないだろ

610:Name_Not_Found
07/07/03 22:38:23
>>608
またおまえか

611:Name_Not_Found
07/07/03 22:42:45
Web制作板である以上、IEが対応してなければどうにもならん。
Array拡張程度なら何とかなるが。
IEでgeneratorやdestructuring assignmentを行う方法があるならぜひ聞きたい。

612:Name_Not_Found
07/07/04 00:52:16
使ってほしかったらさっさと日本語ドキュメントを書け

613:Name_Not_Found
07/07/04 03:08:51
IE の独自拡張にさんざ文句言って置きながら
Mozilla の独自拡張は諸手で喜ぶメンタリティが本気で分からない。

614:Name_Not_Found
07/07/04 04:01:14
まーた脳内で敵を作り出してるのか

615:Name_Not_Found
07/07/04 05:10:19
>>613
使うと文句言われるIE独自拡張の例を挙げてくれ

616:Name_Not_Found
07/07/04 07:55:06
洩れもECMAが対応するまではJS1.7の機能を使う気はないな。
リファレンスチェックするときECMAでチェックしてるし。

617:584
07/07/04 10:12:53
>>585
ありがとうございました。

618: ◆OVNYPzgZN2
07/07/04 11:14:47 d2uLlG6A
質問ですが、
document writeで出力する文字にHTML特殊文字があった場合にそのまま表示させるのは危険性があると思うので
HTML特殊文字のエスケープ処理を行いたいのですが、そのような関数はjavascriptにはありますでしょうか?
いろいろ調べた限り、javascriptの出力をエスケープをしているコード自体がなく困っています。


619:Name_Not_Found
07/07/04 11:28:14
>>618
ないね。もっともHTML的にトラブルになるのは「<」と「>」
だけだと思うけど。
str.replace(/</g, '&lt;').replace(/>/g, '&gt;')
じゃ不十分かな。

620:Name_Not_Found
07/07/04 12:49:29
>>619
あと半角の「&」もだよ。
半角「&」は真っ先に変換しないと < や > が二重に変換されるので注意。

621:Name_Not_Found
07/07/04 13:29:39
>>620
おお、すっかり忘れていた。アドバイス感謝。

622:Name_Not_Found
07/07/04 17:08:37
'はしなくてもいいの?
あ、sqlじゃなければいらねえかな

623:Name_Not_Found
07/07/04 17:52:31
質問です。Javascriptに排他制御は無いんですか?

624:Name_Not_Found
07/07/04 17:56:59
無いんですよ

625:Name_Not_Found
07/07/04 18:02:22
わかった、自分で実装してみる

626:Name_Not_Found
07/07/04 18:03:30
>>623
ピーターソン使えやボケが

627:Name_Not_Found
07/07/04 18:10:06
>>626
大学で習ったばかりだから、それを使う予定

628:Name_Not_Found
07/07/04 18:28:13
>>623-627
ブラウザ上のJavaScriptはシングルスレッドだから。
排他制御いらないでしょ。

629:Name_Not_Found
07/07/04 18:42:54
使いたいから使うわけで、必要か不要かはおまえ一人がきめることじゃない

630:Name_Not_Found
07/07/04 18:57:12
>>629
そりゃ結構だけど不要なのに排他制御のコードつけるって何の意味も
ないと思うよ。ま、ヘタ打って動かないもの(ブラクラ)作らないようにね。

631:Name_Not_Found
07/07/04 19:32:34
>>618
Attr の &, ', "
Text の <, &, ]]>
Comment の --, 末尾の -
CDATASection の ]]>
ProcessingInstruction の ?>

JavaScript リテラル内の ETAGO, 入れ子の文字列リテラル
CSS の url(), expression()

632:Name_Not_Found
07/07/04 20:32:27
>>630
setTimeoutがあるけどこれは処理割り込まないの?

633:Name_Not_Found
07/07/04 20:39:34
>>632
割り込まない。
というか、全体的な処理がfunctionをatomとして処理スタックにつんでいくイメージ。
再描画もたいていそのタイミング(functionの切れ目)で行われることが多い。

634:Name_Not_Found
07/07/04 21:25:34
質問させて下さい

URLリンク(www.simplexsimple.com)
はページ上部にしか移動できませんが
任意のidのフラグメントを指定した、上サイトのjavascriptは実装可能でしょうか?

よろしくお願いします

635:Name_Not_Found
07/07/04 22:11:38
>>634
どーにでもなるでしょ。idを指定してその要素の位置をoffsetTopで
取得、現在のscrollTopとの差で移動量を計算し、window.scrollBy()
で好きなように移動してけばいいじゃん。書くスキルがないのなら
勉強してね。

636:Name_Not_Found
07/07/04 23:02:18
>>635

技術的に可能という事が解りました
勉強します
ありがとうございました

637:Name_Not_Found
07/07/04 23:33:26 2HLrSMHH
質問です。
関数の中でreturnは2つ書けませんか?変数xがあるとして、
function test(){
return x;
//.....
//.....
return y
}
で、xとyを並べて表示させたいのですが。
ご教示ください。

638:Name_Not_Found
07/07/04 23:41:32
>>637
C言語でインラインアセンブラの勉強をしてみよう!

639:Name_Not_Found
07/07/04 23:56:11
return x; の時点で、関数抜けちゃうよ
return x,y; じゃだめなの?

640:Name_Not_Found
07/07/05 00:35:05
>>639
コンマ演算子は前を捨てるから、それだと y しか返らないよ。

return [x, y]; と配列にして返せば?

受け取り側が a = test(); なら、a[0] と a[1] で取り出せるだろう。

641:Name_Not_Found
07/07/05 00:48:15
>>637
普通の言語のスレでは遭遇しなさそうな質問だなあ。
function test1() {
if(Math.random() < 0.5) { return 'A'; }
return 'B';
}
では半々の確率で 'B' だけが返ったり 'A'と'B'とが
返ったりするわけか。
function test2() {
for(var i = 0; i < 10000; ++i) return 'A';
return 'B';
}
では 'A'が1万個と 'B'が1個返ったりするわけか。
あんたの脳内では。ちょっとすごいね。

642:Name_Not_Found
07/07/05 01:07:01
>>641
お前よりは尊敬できるけどな

643:Name_Not_Found
07/07/05 05:20:45
returnが呼び出されると関数は実行が即座に停止される。
つまり複数の値を返したい場合は配列を使う。

644:637
07/07/05 06:52:10
みなさんありがとうございました。納得です。

645:Name_Not_Found
07/07/05 11:06:10
>>633
じゃあyieldが実装されてしまった今は
関数単位でみればその前提は無くなるわけだね

646:Name_Not_Found
07/07/05 11:58:51
>>645
setTimeout()登録関数の途中でyieldするとどうなるわけ?
(あなたの勝手な期待ではなくどのように動作するのが仕様
かということだけど。)

647:Name_Not_Found
07/07/05 12:48:00
オブジェクト化してアクセスすりゃいいじゃん

648:Name_Not_Found
07/07/05 12:58:40
>>645
なにをいっているのかよくわからんな。
yield入りfunctionはジェネレータだから何もかわらんよ。

649:Name_Not_Found
07/07/05 14:59:15 vgqMaeo7
質問です。
function foo(){
this.myfoo=goo;
return this;
}
というコンストラクタのとき、return thisは必須ですか?

650:Name_Not_Found
07/07/05 15:14:59
>>649
必要ないです。

651:Name_Not_Found
07/07/05 17:01:48
コンストラクタの中で object を return すると
prototype やら何やら関係なくその object が返ってきちゃうんだよな
だから return this ってやると this っていう object がそのまま返っちゃうんだけど
これは結果としてコンストラクタとやってることは同じだから何も変わらないっていう、
中途半端な処理。あんまりオススメしない。

652:Name_Not_Found
07/07/05 18:39:59 bhyUg2pC
質問です。DOMの定義が今ひとつわからないんです。
DOMというのはブラウザごとにオブジェクトモデルはことなるので、
W3Cがブラウザごとに異なるオブジェクトモデルを統一するために作った
インターフェイスと言うことなのでしょうか?

653:Name_Not_Found
07/07/05 18:51:42
>>652 DOMの定義ならこれを嫁。
URLリンク(www.w3.org)
今ではブラウザとは無関係に「HTML/XMLドキュメントを操作するAPI」
ということになってる。実際Java(JavaScriptでなく)とかでもDOM使えるし。

654:Name_Not_Found
07/07/05 18:56:43
他言語で扱えるかどうかは聞いてない

655:Name_Not_Found
07/07/05 18:58:29
IDどうしたの?

656:Name_Not_Found
07/07/05 21:12:05
>>649
foo.call({}) のように使う事はよくあるだろう。
10年以上前なら意味がないと言ってもよかった。
しかし、apply()/call() 以降のここ約10年では、意味がある。
特にJScript5.5以降でこれらが採用され、それが普及したここ何年かは、意識して書き分けなければならないだろう。

657:Name_Not_Found
07/07/05 23:13:19
>>652
主にプログラミング言語からXML/HTMLを操作するためのデータモデルおよびAPI。
各インターフェイスが何を抽象化したものなのか
自分でパーサー書いてDOMツリーを構築してみれば嫌でも理解できる。
同時に標準APIの有難さと面倒くささもな。
DOMとは異なるデータモデル(XMLInfoset, XQuery/XPath等)と比べてみてもいい。

658:Name_Not_Found
07/07/06 04:42:12 IYjKoD5h
>>653 >>657

有難うございました。javascriptのdocumentオブジェクトとDOMのdocument interface
においてdocument.bgColorはどっちのアプローチになるのでしょうか?初歩的な質問
で申し訳ないです。

659:Name_Not_Found
07/07/06 08:36:59
>>658
W3C DOMの最初の版であるDOM Level 1にこういう記述がある。
URLリンク(www.w3.org)
つまりbgColorとかはDOM Leve 1では「古いから廃止」に
なってるわけで、含まれていないと考えるべき。
DOM Level 1以前の各ブラウザがサポートしていた共通
部分のことを「DOM Level 0」と通称するが、これは
あくまでも通称であってW3Cが標準化しているものではなく
何と何がDOM Level 0なのかは厳密に定まっていない。
だからbgColorみたいな古いものがDOMかどうかという質問は
「W3Cの定めるDOMではない」「W3C以前のDOMだと言うことも
できなくはない」ということかな。

660:Name_Not_Found
07/07/06 16:34:25 jlW8Jylo
質問です。
var a = new Object() ;
として、aのオブジェクトを使って色々やった後に
var a = new Object() ;
としたとします。
このとき、2つのインスタンスはどういう関係なのでしょうか。
aというオブジェクトと同じものがもう1個できたのか、
aというオブジェクトを上書きしたのか、
その辺のところがよく分かりません。ご教示ください。

661:Name_Not_Found
07/07/06 17:05:52
>>660
無関係。変数aに前に格納されていたオブジェクトへの参照は
どっかよそに保管されていない限り失われ、そのオブジェクトは
ごみ集めにより回収される。

662:Name_Not_Found
07/07/06 17:10:13 1Uvx8xRW
prototype.jsだと。継承って
ko.prototype = Object.extend(new oya, {});
になってるじゃないですか。

ko.prototype = new oya;
JavaScriptの継承ってこれですよね。

何が違うの?extendで明示してるだけ?

663:Name_Not_Found
07/07/06 17:35:57
>>662
prototype=new .. +αのことがしたいからでしょ。ソース読んでみては?

664:Name_Not_Found
07/07/06 17:40:47
>>663
ソース読むと、第2引数のプロパティを第1引数のプロパティにfor-inで渡して、
第一引数をリターン。つう感じです。

ふと思ったけど、継承でも
ko.prototype = Object.extend(new oya, {
 hoge : function(){
 },
 hogehoge : function(){
 }
});
みたいな作法が使えるのが良いのかな?

665:660
07/07/06 19:45:23
>>661
ありがとうございました。

666:Name_Not_Found
07/07/06 20:16:36
>>662
単に他との整合性で FA

667:Name_Not_Found
07/07/06 21:18:00
属性値の変更についての質問です。

ボタンを押すとテキストボックス(input type="text")を
非表示(type="hidden")にするということをしたいのです
がブラウザがIE(ver6,7で確認)だとうまくいきません。
以下ソースです。

<html>
<head>
<script>
function setattr()
{
//document.getElementById('test').setAttribute("type", "hidden");
document.getElementById('test').type = "hidden";
}
</script>
</head>
<body>
<input type="text" name="test" id="test"/>
<input type="button" onclick="setattr();" value="click" />
</body>
</html>

※コメントアウトしている方法でも試してみましたがうまくいきませんでした。

何か対策がありましたら教えてください。よろしくお願いします。

668:Name_Not_Found
07/07/06 21:41:05
その辺はブラウザの実装依存になりそうな気がする

remove して hidden のを append するんじゃいかんの?

669:Name_Not_Found
07/07/06 21:49:41
できないっぽいお
CSS で適当に対処したお

670:Name_Not_Found
07/07/06 21:58:31
ノードを消してから追加するのが無難かな

671:667
07/07/06 22:12:31
>>668~670さん
返信ありがとうございます!
削除して追加という手順がよさそうですね。
とくにその方法でも問題なく実装できそうなのでやってみます。

ありがとうございました!

672:Name_Not_Found
07/07/07 10:33:26
>>658
語弊はあるが、階層構造を持つデータをテキスト的に(タグ等で)表現したのが XML であり、
オブジェクト的に表現したのが DOM、関数と軸と述語で表現したのが XPath だと思っている。

よく考えてみろ。HTML では BODY 要素型に属する bgcolor 属性が、
DOM では HTMLDocument インターフェイスに属するなんて、いかにも変だろ?
やはり bgColor は HTMLBodyElement インターフェイスのアトリビュートであるべきだ。

XML/HTML 自体が階層構造を持つデータであることを認識していれば、DOM はすぐ理解できると思うがな。
まあしかし、今更 bgColor なんてのが出てくる時点で HTML の理解も怪しそうだが。

673:Name_Not_Found
07/07/07 10:45:17 uorwyi/H
どこで質問していいのか分からないので間違っていたら誘導願いたいんですが

↓以下のサイトが自動更新プログラム(?)を用いて更新しているみたいなんですが、
URLリンク(yourvideo.hot-jp.com)

自分のブログも巡回先に入れられてるみたいです。
それを阻止するにはどうしたら良いんでしょうか?

<object>~</object>までと記事タイトルだけ引き抜いて自動更新してるみたいなんですが

その気になれば自分が書いた文章丸々ぱくって更新されることもあるんでしょうか?

(コピペならまだしも自動で全ての記事をぱくられて更新されまくると不快なので)

もしよろしかったら解答お願いします。
質問スレッドが間違ってたらすいません。

674:Name_Not_Found
07/07/07 10:59:43
すれちがい

675:Name_Not_Found
07/07/07 11:05:13
>>673
宣伝乙

676:673
07/07/07 11:14:45 uorwyi/H
どこで質問すれば良いんでしょうか?
web制作板以外で分かる人がいるとは思えないんです・・・

677:Name_Not_Found
07/07/07 11:18:08
>>676
誰が板違いなんて言った?

678:Name_Not_Found
07/07/07 11:19:22
直接相手に言えば?

679:Name_Not_Found
07/07/07 11:23:29
踏んでしまった…

680:Name_Not_Found
07/07/07 11:24:19
メール先、連絡先が分かりません
似たようなサイトがたくさん出てきた場合は対処に困るし
一発で回避できるような方法があればいいと思って

>>677
質問スレは制作初心者とcss、htacceseぐらいだと思うんですが
もしよろしかったらどこが適当なのか教えてもらえないでしょうか?

681:Name_Not_Found
07/07/07 11:26:23
ああもうこりゃ釣り決定だな
以降スルーで

682:680
07/07/07 11:27:31 uorwyi/H
なにがどう釣りなんでしょうか・・・

683:Name_Not_Found
07/07/07 11:30:57
スパム報告しておいたよ

684:Name_Not_Found
07/07/07 12:20:15
JavaScriptで画像を回転させられますか?
場所ではなく向きをです。

685:Name_Not_Found
07/07/07 12:39:49
質問偽装か

686:Name_Not_Found
07/07/07 13:48:44
>>684
URLリンク(dojotoolkit.org)

687:Name_Not_Found
07/07/07 14:40:23
>>684
canvas

688:Name_Not_Found
07/07/07 15:24:46
onload = func('hoge');
ってやったらIEに怒られた(´・ω・`)

689:Name_Not_Found
07/07/07 16:50:19
質問です。Javascript で「画像表示OFF」にしているかどうかを取得することは
出来るでしょうか?

690:Name_Not_Found
07/07/07 20:27:10
JavaScriptでページ内のflashだけリロードさせるにはどうしたらよいでしょうか。
「JavaScript」「flash」「リロード」で30分ぐらい検索したのですが、見つかりませんでした。
ヒントだけいただけたら自分で調べますので、よろしくお願いします。

691:Name_Not_Found
07/07/07 21:48:07
function adoLoadText(filename, charset) {
var stream, text;
stream = new ActiveXObject("ADODB.Stream");
stream.type = 2;
stream.charset = charset;
stream.open();
stream.loadFromFile(filename);
text = stream.readText(-1);
stream.close();
return text;
}
で5000kのutf-8のhtml読み込んでるんですが、とにかく遅い
10秒近くかかるんですが、他にutf-8が読み込める軽い方法ってありませんか?

ちなみにそのhtmlはテキストで1000行あるんですが、それをループとmatchするのは1秒かかるかかからないか
って感じです

692:Name_Not_Found
07/07/07 22:38:22
>>690
swf innerHTML div object

693:Name_Not_Found
07/07/07 22:38:41
ディスクから読むのとメモリ内で処理するのと1~2桁違うのは普通でわ。

694:690
07/07/08 00:17:49
>>692
innerHTMLで書き換えですね!
それらのキーワードで参考になるサイトも見つかりました。
ほんとありがとう!

695:Name_Not_Found
07/07/08 19:25:00 U7RXFIOP
文字列1x2x3x4x5xから最後のxを取り除く簡単な方法ありますか?

696:Name_Not_Found
07/07/08 19:38:31
>>695
str = "1x2x3x4x5x";
str.replace(/x$/,"");

697:Name_Not_Found
07/07/08 20:29:02 Hs9Jb1xa

ページロード時にフォームの初期化を行いたいのですが、BODYタグのOnLoadを使った場合、
例えば下のようにBODYタグの後に読み込まれるフォームの
オブジェクトを使ったJavaScriptの場合でもオブジェクトエラーにならないんですけど、
これはブラウザが自動的に読み込み中なのかどうか判定しているんでしょうか?

それともたまたまBODYタグを読み込むと同時にFORMまで読み込まれているからなのでしょうか?


<HTML ~~>
~~
<BODY OnLoad="javascript:document.forms[0].F1.value='XXX';">

<FORM ~~>
<INPUT TYPE="hidden" NAME="F1">
~~~


もし、たまたまエラーが起きていないんであれば、エラーが発生することの無いように
フォームがすべて読み込まれた後に、その初期化スクリプトを実行したいんですけど、
その場合はどこにどのように書けばいいのか、知っていたら教えてください。
(ブラウザはIE限定で構いません。)



698:Name_Not_Found
07/07/08 22:15:23
>>697
onloadハンドラはページ内容が全部読み込まれた後で実行されるから。
普通はonloadハンドラに初期化関数の呼び出しを書いて、その初期化
関数で初期化を行う。どのブラウザでもそれで動く。つかこのスレにも
そういう使い方はいくつも載っている。つかそれすら読めない奴には
2度と来て欲しくないね。カエレ。

699:Name_Not_Found
07/07/08 23:00:43
getElementById以外のgetElementBy~がよく分かりません。
たとえばgetElementByNameでいくつか集めてきて、それら全てに何かしたいときは
forをどういう風に書いたらいいんでしょうか

700:Name_Not_Found
07/07/08 23:06:08
>>699
getElementByNameならそもそもforなど無縁のはずだが
そういう考えだとあと20年はかかるだろうな


701:Name_Not_Found
07/07/08 23:13:55
>>700
なるほど・・・
いろいろ弄って覚えます

702:Name_Not_Found
07/07/08 23:36:16
getElementByNameってなに?


703:Name_Not_Found
07/07/08 23:52:29
みんないじわるだな。w
Element か Elements かの違いは非常に重要な意味があるからそこを見落とすな。

704:Name_Not_Found
07/07/09 02:05:05 if4RxLWH
iframeに表示されている内容を取得したいのですが、どうすればいいでしょうか?

705:Name_Not_Found
07/07/09 05:06:58
おれも知りたい↑
だれかおしえて

706:704
07/07/09 06:06:51 if4RxLWH
補足です。
iframeのform内の情報ではなく、iframe内のHTML自体を取得したいのです。
よろしくお願いします。

707:Name_Not_Found
07/07/09 08:27:53
>>704-706
frames.IFRAMEの名前.document.body.innerHTML
ただしIFRAMEの中身が他鯖なら絶対不可能。

708:699
07/07/09 14:17:22 06tSfGZX
例えばgetElementsByNameで集めてきたDIVを全て右に10px動かすというのはどういうコードになるんでしょうか。

709:Name_Not_Found
07/07/09 14:57:17
>>708
それぞれのdivがposition:absoluteやposition:relativeに
指定されていないのなら、position:relativeに指定して
leftに10pxを設定すればいいんじゃないの。あとは勉強すれば
できるだろ。全部書けというのは断るから。そうか、for文が
書けない?
for(var i = 0; i < a.length; ++i) { ...a[i]を操作... }
これでいいかな。

710:699
07/07/09 15:05:46 06tSfGZX
>>709
for(var i = 0; i < (a=getElementsByName('test')).length; ++i) { ...a[i]を操作... }
案外配列っぽいんですね;
ありがとうございました。

711:Name_Not_Found
07/07/09 15:32:44
>>710
ループの中で々getElementsByName()を呼ぶのはちょっと
重そうだけどね。ふつう
for(var i = 0, a = ...; i < a.length; ++i) ...
とかじゃないですかね。

712:Name_Not_Found
07/07/09 15:49:54 PSX0xquK
/動的に関数を作るときに変数に入った値をそのまま関数に埋め込むのってどうすればいいんですか?
たとえば
var value = 1;
var testalert = function(){ alert(value);};
value = 2;
testalert();

これだとアラートウインドで表示される値は 2 ですが、1を表示するようにしたいのです。

713:Name_Not_Found
07/07/09 16:01:34
>>712
ヒント:ローカル変数
ダウト:アラートウインドって?

714:Name_Not_Found
07/07/09 16:32:04
rnode=document.getElementById('palette').getElementsByTagName('TR');

<table width="88" border="1" id="palette">
<tr><td colspan="2" align="center" style="width:72px; height:20px;">
<div id="box"></div>
<div id="subbox"></div>
</td></tr>
<tr><td style="background-color:#ff0000; width:36px; height:36px">
<br></td>
<td style="background-color:#ffff00; width:36px; height:36px"><br>
</td></tr>
<tr><td style="background-color:#00ffff; width:36px; height:36px"><br>
</td><td style="background-color:#0000ff; width:36px; height:36px"><br>
</td></tr>
<tr><td align="center" style="background-color:#ffffff; width:36px; height:41px">
<img src="eraser.gif" alt="eraser"></td>
<td align="center" style="background-color:#ffffff; width:36px; height:41px">
<img src="pen.gif" alt="pen"></td></tr>
</table>

の場合rnodeには何が代入されるんですか?

715:Name_Not_Found
07/07/09 17:31:37
>>713
本当に分かってるんならソース書いてみなよ

716:Name_Not_Found
07/07/09 18:05:54
>>712
FAQ >>3-4 のQ14/A14 をよく読め。読んで応用できないなら向いてない。
>>714
tableの中にある4つのtr要素を含んだHTMLCollectionオブジェクトでは。

717:Name_Not_Found
07/07/09 18:30:13
>>713
ひっこめ半可通。

718:Name_Not_Found
07/07/09 18:42:59
ことあるごとにダウトって言ってる奴はなんなの?

719:Name_Not_Found
07/07/09 19:10:13
ダウトって普通に言わないか?
俺も良く使うんだが

720:Name_Not_Found
07/07/09 21:01:41
createしてから名付けたエレメントはgetElementsByNameに引っ掛からないんですね・・・徒労・・

721:Name_Not_Found
07/07/09 22:29:24 TFz/71e5
質問させていただきますm(__)m

<input class="term" type="text" name="term" value="○○を入力汁" size="17" />
というフォームを設置しているのですが,このフォームにフォーカスされたときに
valueの文字列が全部選択状態,あるいは消去されるようにしたいのですが,
どうすればよいでしょうか?

722:704
07/07/09 22:40:09 if4RxLWH
>>707
レスありがとうございます。

それと、説明が足らずすみません。ご回答いただいた内容で方向性はあっているのですが、
BODY内部だけではなく、HTMLソース全体を取得したいのです。

やりたかったこととしては、iframeにテキストファイル表示させて、
その内容を文字列として取得したかったのです。
外部ファイルの読み込みをしたかったということなのですが、
何かいい方法はないでしょうか?

document.documentElement.innerHTMLで<head>部分も取得できるようですが、
<html>タグの部分が取得できないのと、実際に<head>が書いてあるかどうかに関係なく、
必ず戻り値に<head>が含まれてしまいます。

純粋にファイルの内容だけをとりたいのですが、方法ご存知でしたら教えてください。

723:Name_Not_Found
07/07/09 22:43:39
>>722
iframe使わなあかんの?

724:704
07/07/09 22:50:24 if4RxLWH
>>723
必ずしも使う必要はないです。それが簡単そうかなと思ったので。

725:Name_Not_Found
07/07/09 23:47:39
>>724
XMLHttpRequest

726:Name_Not_Found
07/07/09 23:58:35
>>721
<input ... onfocus="this.value=''" ...>
ただし「この入力欄にフォーカスされたとき」になってる。

727:704
07/07/10 00:35:41
>>725
自分でモジュール集めたりとかもっとめんどくさいものだと思って逃げてたのですが、
そうでもないのですね。せっかくなのでこの機に勉強してみます。
ありがとうございました。

728:Name_Not_Found
07/07/10 04:02:35 nRpMLYBd
ajaxの話なんだが、丁度合うスレが無くて。誘導歓迎。

xmlhttprequestで通信中にabortしたときの動作が不定なんだが、
・IE6:status=0
・Gecko:停止するのみ
・FF:イベントは発生するが、statusを参照するとエラーを吐く
このFFの動作が厄介なんだけど、対処法って無いのかな?

729:Name_Not_Found
07/07/10 05:15:33
→手動タイムアウト

730:Name_Not_Found
07/07/10 11:33:10 k8aUrE3A
perseIntするときは第二引数を書いておいたほうがいいですか?

731:Name_Not_Found
07/07/10 11:40:48
>>730
書いておかないと「'012'」をparseIntしたら8進数扱いで
結果は10になったりする。

732:Name_Not_Found
07/07/10 11:45:55
>>731
それ、逆だろ…。
8進表記されたものを、正しく、8進として解釈してるだけ。

むしろ、8進表記を、むりやり10進と解釈させたいなら、と言うのが、本筋。

733:Name_Not_Found
07/07/10 11:48:37
>>732
なるほど、考え方次第だね。ただ、parseInt()を使う人で
8進数扱いの機能が欲しいと思ってる人はすごく少ないんじゃ
ないかと思うんだよね。そしてWebページの向こうにいるユーザ
にとっては「0で始まると8進数」だなんてちっとも真ではないよね。
だってコンピュータ屋じゃないんだから。

734:Name_Not_Found
07/07/10 12:39:00
>>733
何その屁理屈

735:Name_Not_Found
07/07/10 12:44:05
>>733
で、結局ユーザーってのはみんなバカだと?
自分を利口に見せるのに人を悪く言うヤシっているよね。

736:Name_Not_Found
07/07/10 12:45:33
>>734
いやべつに、反論あるなら普通に反論してよ。もっかい書くと
「JavaScriptにおけるparseInt()の1引数での使用の大部分は
第2引数として10を指定する方が適切なケースに相当する」
さあ反論どうぞ。

737:Name_Not_Found
07/07/10 12:48:14
>>735
いや全然。コンピュータ屋さんじゃない人が「0で始まると
8進数だなんて知らない」のはバカかどうかと全く無関係。
だってその人の知る必要のないことなんだし。みんな知ってる
べきだと思うのならそれこそコンピュータ屋の思い上がり。

738:Name_Not_Found
07/07/10 13:17:28
730の気持ちを他所に、オナニー議論してるお前らキモスギ
クライアントを無意味に責めたり馬鹿にしたり
そして、出来上がるオナニーサイト

お疲れ様でしたwwwwwwwwwwwwwwwwwww

739:Name_Not_Found
07/07/10 14:07:54
      ./
      / i i; ;; ; ,,,,; ;ッ=~"゛~ ̄“゛"==、_,,、.i ii;;...     
      ,i;; i ii  ;;;// ii ;;./ ̄ ̄~"゛~ヽ,、.\、,;;...
     |;; ;;  ;;i;;,i ii i //       ,,;-''゛゜ \、、ヾ、ヾ    
     ゞ,,;; ,i,;ii:i i i i i;'     ,.;"_,;。、;- ヾ, 、ヾ i..
      il i i !!;;i i; ii .i'      "゛ッ'r゛ィ’   .i i ii'ヾ,
       ii;; ...:::i i ii l ,,..,,,、..   "’     |i l l l'i    
       .i ; ; ;;i i;;;;;;:::'“_。、-;,.';::.       i,,、从);;
       ‘ヽ,,iヽ,;; ;;;;;;ッ“;ィ'  ::;;..     ,.、    i ,i       
        ,‐,i__i、;;;;:ii;;”     :::;;;.... ."  ゛    .;i     してないなぁ     
        i'`i-゛,ヾ;;;;;.ヽ,:::...  ::::"゛,.,,、,,'';~'    .i'ヾ_,、        
        i い_,i~;);;;;;...ヽ.;::....  “て_,; ゜   ./  \;;l\,_      
          ! ゛..“`;;;;`l;;;;;;:゜.`;‐、,  "゛    /    ;/   \_      
        ヽ、 '' ';;l 'lllll!!'"";;;;;..゛"'';;::-‐'"    .;/     ゛`;、_             
          〉   l  l,/  /  ''ヾ;;;;;;::::...    . i        i、 ̄゛~゛'ヽ、_   
        /'i i   l ''  /-,-  i;;;''       i   ,_,,、-‐-、,,\        
         /  .l '   i   i' く,   |`..  .:" ;i   \     ~"                      
      〈  ノ      .ノ  `"‐、,i  `@"   i   ,/                       
       i ;;./     /"      'ii      ;|  ,/

740:Name_Not_Found
07/07/10 14:12:23
>>737
「一般人は8進数を知らない」 ということを知っている必要がある。

741:Name_Not_Found
07/07/10 14:19:40
>>740
次の10進法の数を2進法で表わしなさい
a) 5
b) 7
という問題は中学でしっかりやってるわけだが。応用でN進数の論理も
習う。 国民を愚弄しているのか?

742:Name_Not_Found
07/07/10 14:30:57
正規表現文字列(//)内で変数を使用するにはどのようにすればよいのでしょうか?
宜しくお願いします。

743:Name_Not_Found
07/07/10 14:44:39
>>742
Perlじゃないんだから直には使えない。正規表現を表す
文字列を(変数とリテラルの文字列連結などを使って)組み立てて
new RegExp(...) で正規表現オブジェクトに変換する。この説明で
解らなければ勉強してね。

744:Name_Not_Found
07/07/10 14:47:15
だからさー、8進数を知ってるかどうかという問題じゃないん
だってば。「0で始まると8進数を表す」ってのはどこの知識だよ。
プログラミング言語やらない人にはまったく縁がない知識だろ?
言語たってC以降だよなCで始めたんだから。

745:Name_Not_Found
07/07/10 15:24:46
>>720の代替え案をくれ↓

746:Name_Not_Found
07/07/10 15:54:31
>>745
innerHTMLでname属性まで指定した要素を一気に作り出すとかはどうかな。

747:Name_Not_Found
07/07/10 16:08:34
>>741
10年近く英語勉強してたのに一向に喋れないお前は何者だよ

748:Name_Not_Found
07/07/10 16:17:03
>>746
( ゚д゚)おおぉ・・・
なんだかコードも短くなりそう。ありがとう

749:742
07/07/10 16:31:25
>>743
理解しました!
jsでは当たり前のことなのか
どこにも変数の扱い方について書いていなかったので助かりました!



750:741
07/07/10 17:12:53
>>747
言っておくがおれは英語ペラペラだよ。英国にいたこともある。
自分を基準にしてものごとを判断しない方がいいな。あんたの
ために言っておく。

751:Name_Not_Found
07/07/10 18:07:15
おいおい、スルー力なさすぎ。2ちゃんでは何とでも言えるんだから
無意味な書き込みはやめてくれって。恥ずかしい奴だな…

752:Name_Not_Found
07/07/10 19:40:25
24進数と60進数は小学校で習うよね?

753:Name_Not_Found
07/07/10 20:16:01
そんなこといったら、2進数だって17進数だって習うだろ

754:Name_Not_Found
07/07/10 20:24:47
17進数ってなんだ?

755:Name_Not_Found
07/07/10 20:41:10
そのまんまだろ

756:Name_Not_Found
07/07/10 20:43:50
24進数の17だったら31だが。

757:Name_Not_Found
07/07/10 20:48:37
752は時分秒って意味?
753は帯分数なら何でもありって感じかな

いきなり良スレになったな

758:730=ID:k8aUrE3A
07/07/10 20:49:33
今日の昼前に、perseIntするときは第二引数を、の質問をした者です。
今戻って来て楽しみに見に来てみたんですが、私がバカでした。
お騒がせいたしました。

759:Name_Not_Found
07/07/10 21:46:19
0で始まれば8進数か。9年前までのかなりレガシーな仕様だな。
実装は互換のために解釈し続けるだろうが、今更書くもんじゃないだろ。
仕様では付録扱いなんだから。
しかし2007年にもなってまだ話題にするJS部外者がなんでこのスレに大量に発生してんだ?
誰か止めてやれよ。
つうかもう誰もいないんだろうな。
こりゃもう完全にJS終了だわ。

760:Name_Not_Found
07/07/10 22:16:27
前から思ってたんだけど、なんで16進数は0~Fなのに、
60進数(と言われてるもの)は0~59(桁上がり)なの?

761:Name_Not_Found
07/07/10 22:21:09
中身は普通に十進数だって事だろ

762:Name_Not_Found
07/07/10 23:54:09
60種類もあったら覚えるの大変やん

763:Name_Not_Found
07/07/11 00:30:13
0-9は普通の数字だからあと50でわ。

764:Name_Not_Found
07/07/11 00:39:43
おまえらつくづくばかだな。おれってこんなにばかですという見本のレス群。

765:Name_Not_Found
07/07/11 00:58:01
前から思ってたんだけど、なんで一十百千万の次が十万なの?

766:Name_Not_Found
07/07/11 01:51:17
1
10
100
1000
10000
10000

767:Name_Not_Found
07/07/11 08:20:40
どんでもなく差があることを、桁違いっていうだろ
桁違いの大きさ
桁違いのやわらかさ
1万の次が2万だったら大して差がなくてションボリだから


768:Name_Not_Found
07/07/11 08:52:20
>>765
日本語は大きい数は1万進数。
10000×10000=1億、1億×10000=1兆、京、垓、…
英語は大きい数は千進数。
1000×1000=milion、million×1000=bilion、billion×1000=trillion、…

769:Name_Not_Found
07/07/11 11:35:40
いい加減にしろ。なんて程度が低いんだ、ここは。

770:Name_Not_Found
07/07/11 11:41:39
程度が低いのは >732 だけです><

771:Name_Not_Found
07/07/11 12:33:04
2ちゃんだから全く煽るなとは言わないが、ケナすだけで
何も貢献しない書き込みしかできない奴は嫌われるよ。
なぜ一、十、百、千、万と固有の名前があるのに万の10倍
を表す固有の名前がないのか説明してみ。

772:Name_Not_Found
07/07/11 13:13:21
>>771
これでええやん。
URLリンク(ja.wikipedia.org)

773:Name_Not_Found
07/07/11 13:21:55
>>771
おれは小学5年のとき知ってたよ。まったくばかは自分を基準にするからど
うしようもない。ちなみにおれは英語ペラペラだ。英国にも居たことがある。

774:Name_Not_Found
07/07/11 14:12:08
だから「知ってた」というだけでなく説明書いてみ。説明文が
ちゃんと書けるかどうかで分かるからさ。その知能を見せつけて
みてはいかが。今のままだとアホまるだしー。

775:Name_Not_Found
07/07/11 14:18:41
無知を、自分の武器だと勘違いしてる人間ほど、たちの悪いものは無い。

776:Name_Not_Found
07/07/11 14:26:43
抽象論でなく、具体的に実力をお見せください。

777:Name_Not_Found
07/07/11 14:28:11
英語力なんかも見せてもらったら我々の勉強になるんじゃね? (w

778:Name_Not_Found
07/07/11 14:35:37
「ペラペラ」とか書いてくれたりしてね(w

779:Name_Not_Found
07/07/11 15:45:56
             | ̄ ̄|| | ̄ ̄|i | ̄ ̄|| | ̄ ̄|l
           || ̄ ̄| ̄ ̄l ̄ ̄| ̄ ̄! ̄ ̄| ̄ ̄| ̄||
           l| ̄| ̄ ̄i ̄ ̄| ̄ ̄l ̄ ̄| ̄ ̄! ̄ ̄|l
 | ̄ ̄|l | ̄ ̄|| || ̄ ̄| ̄ ̄| ̄ ̄i ̄ ̄| ̄ ̄| ̄ ̄| ̄|| | ̄ ̄|| | ̄ ̄|i
 ̄i ̄ ̄|゙ '' ̄i ̄ ̄|| ̄! ̄ ̄;/  ̄ ̄ ̄ ̄ ̄ ゙̄ヾ ̄| ̄ ̄|i ̄| ̄`~|i ̄ ̄| ̄ ̄
 ̄ ̄| ̄ ̄i`~ ̄| ̄i| ̄ ̄| ̄|: : : : : : : : : : : : : : : | ̄ ̄| ̄|| ̄ ̄i ̄″| ̄ ̄|i ̄
 ̄| ̄;゙|i ̄ ̄l! ̄ ̄|| ̄| ̄ ̄|: : : : : : : : : : : : : : : | ̄i ̄ ̄|| ̄i ̄ ̄| ̄ ̄i ̄~`l
 ̄ ̄i ̄ ̄| ̄ ̄i、 ;|| ̄ ̄| ̄|: : : : : : : : : : : : : : : | ̄ ̄| ̄|l ̄ ̄| ̄`~|i ̄″| ̄
 ̄i ̄`~| ̄ヾl; ̄ ̄l| ̄| ̄ ̄|: : : : : : : : : : : : : : : | ̄| ̄ ̄|| ̄| ̄ ̄i| ̄ ̄| ̄ ̄
`、 ̄| ̄ ̄i ̄ ̄| ̄|| ̄ ̄| ̄|: : : : : : : : : : : : : : : | ̄ ̄! ̄|| ゙̄ ゙i ̄ ̄| ̄ヾi| ̄
″| ̄ ̄i| ̄!,,| ̄ ̄i| ̄! ̄ ; :|: : : : : : : : : : : : : : : i ̄| ̄ ̄|| ̄i ̄ ̄| ̄ ̄i ̄ ̄l
| ̄~~i ̄ ̄| ̄ i ; ̄|| ̄ ̄| ̄|: : : : : : : : : : : : : : : | ̄ ̄| ̄|| ̄゛| ̄ ̄|i ̄ ̄| ̄_
''- .._   ~""''' ‐- ...,,__              _,,..-‐''~""''' ‐- ...,,___,,.-‐'
     春日飯大砲台【かすがいいたいほうだい】
       (国指定史跡:埼玉県春日部市)

780:773
07/07/11 15:54:05
>>775
Yes. You are light.

781:Name_Not_Found
07/07/11 17:31:40
これでペラペラ話したつもりなのかよ・・・なんてこった・・・

782:Name_Not_Found
07/07/11 17:37:55
さすがに釣りでしょ… You are collect. ってか。
(collect → 集められる → 釣られる、のつもり、
本当はcollectの過去分詞はcollectedだけど。 :-)

783:Name_Not_Found
07/07/11 20:01:39
ALL YOUR BASE IS BELONG TO US

784:Name_Not_Found
07/07/11 21:05:14
この >>783 は何だろう、英語の文法としては全く間違っているし、
1行だから縦読みでもなく、ローマ字読みか発音のひっかけか
と思ったが分からん。分かった人おしえて。

785:Name_Not_Found
07/07/11 21:07:32
ググレカス

786:Name_Not_Found
07/07/11 21:08:15
>>784
有名な「Engrish」。調べれば分かる。

787:Name_Not_Found
07/07/11 21:16:56
>>786
有名なのは
「ALL YOUR BASE ARE BELONG TO US」

788:Name_Not_Found
07/07/11 21:18:56
You is a big fool man.
ってのもあったねぇ

789:Name_Not_Found
07/07/11 22:16:50
なるほど。有名なフレーズのAREをISにしてさらにひねってるわけ?
これでひねったことになるのかどうか…

790:Name_Not_Found
07/07/12 00:24:06 tahgxL7b
phpのfile関数の代わりになるものはありませんか?
(特定の外部ファイルから、中身を配列で取り出す)
あるなら教えてください。

791:Name_Not_Found
07/07/12 01:20:20
>>789
うろ覚えで書いたら間違って書いたんだよww
記憶力悪くて悪かったなww


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch