+ JavaScript の質問用スレッド vol.55 +at HP
+ JavaScript の質問用スレッド vol.55 + - 暇つぶし2ch592:Name_Not_Found
07/04/13 13:52:52
>>590
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
function test() {
var d = document.documentElement;
alert(d.offsetWidth-d.clientWidth-4);
}
</script>
</head><body>
<div><button onclick="test()">Test</button></div>
<p>x</p><p>x</p><p>x</p><p>x</p><p>x</p><p>x</p><p>x</p>
</body></html>

なぜか-4を付けたらスクロールバーサイズと同じになりました。
OSでスクロールバーサイズの設定を変えてもこれならピッタリになります。

とりあえずこれで使ってみます。ありがとうございました

593:Name_Not_Found
07/04/13 13:54:21
昔FirefoxのバグでclientWidthとoffsetWidthが同じになる問題があったが…

多分方法はあるけど、絶対に汚い方法だろうな
ぱっと思いついたのはdiv overflow:autoに対して1ピクセルずつ狭くしていって、
scrollHeightが変化しなくなった値をスクロールバーの値とするとか…

ああ、試すまでも無く無理そうだ

594:Name_Not_Found
07/04/13 13:55:00
>>592
そのマイナス4はFirefoxではアウト

595:Name_Not_Found
07/04/13 14:02:21
WSH使えるなら(HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics\ScrollWidth / -15)
とかでいけるかな・・・

596:Name_Not_Found
07/04/13 14:03:47
でた、IEの謎の2ピクセル。
document.getElementsByTagName("html")[0].style.border = "0"
とすると消える、非常にふざけたIE専スタイルだろうな

597:Name_Not_Found
07/04/13 14:36:21
流れ無視ですまん
「"」と「'」ってどっちを内側にしたほうが綺麗?

598:Name_Not_Found
07/04/13 14:39:23
ケースバイケース

599:Name_Not_Found
07/04/13 14:42:56
>>598
そうか…

600:Name_Not_Found
07/04/13 14:52:39
>>593
そんな風なことをしてスクロールバーの出ないぴったりの最小幅/高さを求めるとか
やってみようとしてるが、けっこう難しい。iframeは鬼門だ。

601:Name_Not_Found
07/04/13 15:09:53
BUTTONのonLoadからcsv.phpに飛ばして、画面遷移せずに
ファイルダウンロードのダイアログを出してます。
phpで出力しているためにダイアログが表示されるまで少し時間がかかるのですが
その間にBUTTONをクリックされるのを防ぐ方法ってありますか?


602:Name_Not_Found
07/04/13 15:54:09
>>601 飛ばす動作の前に「this.disabled = true;」を入れる。

603:Name_Not_Found
07/04/13 15:53:25
あれーJavaScriptでPOSTされたデータって取得できなかったっけ?
GETで送るしかないのかーむー

604:Name_Not_Found
07/04/13 16:45:08
なにをいってるんだきみは

605:Name_Not_Found
07/04/13 18:01:31
>>604
GETならlocation.hrefでもなんでも取得出来るじゃん?
でもPOSTだとそーはいかねーよなー

606:Name_Not_Found
07/04/13 18:24:17
GETとPOSTの区別もつかんヤシが来るところではない。さよなら。

607:Name_Not_Found
07/04/13 20:19:06
ESP発動。
前のページでPOSTしたデータを、遷移後のページで取得したいんじゃないのか?

608:Name_Not_Found
07/04/13 20:33:27
>>607
そう、ユーのアンサーでライトです。

バット、それはインポッシブルだということは
アンダスタンドしてるよ

609:Name_Not_Found
07/04/13 20:39:20
実は不可能ではないんだが、すごいむかついてきたから別の奴答えて
ESP発動させるんじゃなかった

610:Name_Not_Found
07/04/13 21:15:06
>>609
いや、不可能だね。絶対無理だよ。100%できません。 駄目。
無理無理無理無理かたつむりってヤツだ。

うちの妹の風呂上り写真を賭けてもいいが、まずありえないな。

611:Name_Not_Found
07/04/13 21:24:21
>>610
モザイクでもいいからあげてくれ。そうしたら教えてやる。いやまじでお願いします

612:Name_Not_Found
07/04/13 22:16:02
他所でやれ

613:Name_Not_Found
07/04/13 22:34:01
質問です。
海外のサイトでお勉強してたんですが、用語がよくわかりません。
resolving propertyってどういうことなんでしょうか。
ご教示ください。

614:Name_Not_Found
07/04/13 22:39:20
>>613
そのサイトを晒してくれないと文脈が分からん。

615:580
07/04/14 00:16:54
>581,582,583
replaceでうまくできました。ありがとうございました。
半角文字列が続くと突き抜けてしまったのである一定の半角文字列
が続いた場合<wbr>で折り返せば良いのかなと思い質問した次第でした。
折り返しと同時にURLリンク(hogehoge.com)
<a href="URLリンク(hogehoge.com)
とか出来ないか試行錯誤してます。

616:Name_Not_Found
07/04/14 02:27:03
Cometってどのライブラリを使えばいいのでしょうか

617:Name_Not_Found
07/04/14 05:47:44
>>615
何も考えずにstr.split("").join("<wbr>")しときゃいい。
URLに限るならstr.replace(/([\/\?&#%])/g,"<wbr>$1");あたりでも十分実用的。

618:Name_Not_Found
07/04/14 06:04:11
ペニス。

619:Name_Not_Found
07/04/14 17:47:00
仕様書を読んでいて疑問に思ったんだけど、
8.6章で紹介されているnative objectの[[Put]]メソッドは具体的にどこで設定されるの?
Objectの初期化の部分(15.2.2.1)をみても、[[Prototype]]と[[Class]]しか定義していないし…

620:Name_Not_Found
07/04/14 19:24:08
>>619 それは最初からあることになってる気がするけど…
8.6.2 内部プロパティとメソッド
各オブジェクトは [[Class]] プロパティと、[[Get]], [[Put]],
[[HasProperty]], [[Delete]], [[DefaultValue]] メソッドを
実装しなければならない。Host オブジェクトであっても同様である。

621:Name_Not_Found
07/04/14 22:39:25
>>620
俺は和訳を読んでないけど、もしその引用が正確なら抜けがあるね。
[[Class]]以外にも[[Prototype]]も必須だと仕様書には書いてある。
もし読めるなら出来るだけ英語の仕様書読んだほうがいいよ。

しかし、最初からあることになっているのか。それはそれでありかもね。
どうせ必須の項目だし。

622:Name_Not_Found
07/04/15 00:21:43
>>621 和訳でも引用した箇所より前に次のように書いてあるよ
(英語版にももちろんある)。getとputの話だと思って貼らな
かっただけで。

Native ECMAScript オブジェクトは [[Prototype]] と呼ばれる
内部プロパティを持つ。 このプロパティの値は null や オブ
ジェクトであり、継承の実装に使用される。 [[Prototype]]
オブジェクトのプロパティは、子オブジェクトのプロパティの
取得には露出するが、設定には露出しない。

623:Name_Not_Found
07/04/15 00:34:27
621じゃないけど、そうじゃなくて
[[Prototype]]を実装しなければならない
ってことが書いてないってことだよ

簡単でいいから英語嫁、しっかり書いてある
そこは明らかに和訳のミスだよ
誰か伝えてあげれば?

624:Name_Not_Found
07/04/15 00:40:01
ああ、訳の時抜けたんだね。で、誰か伝えてあげれば? (w

625:Name_Not_Found
07/04/15 01:02:37
明日伝えるよ・・・

626:Name_Not_Found
07/04/15 01:15:36
A、B、C、Dというスイッチを作ってonclickで特定の領域に表示させる画像を切り替えたいです。
この際、どの画像を表示するかだけでなく順序も制御したいのですがどうすれば良いでしょうか?


A→B→C→Dの順でクリックし画像を表示させた状態で

1:DをオフにするとCが表示され、そこからBをオフにしてもCが表示されたままであり、さらにCをオフにするとAが表示される。
2:CをオフにしてもDが表示されたままで、そこからDをオフにするとBが表示される。

で、現在思いついているのが変数xで制御する方法です。
xの中には文字A,B,C,Dがクリックした順番に代入されたり引かれたりします。

x=A Aを表示
x=AB Aを表示
x=ABCD Aを表示
x=ACBD Aを表示
x=ADCB Aを(ry
x=B Bを表示
x=BACD Bを(ry

というように全パターンを予め定義しておく方法です。
ですが、これだとアナログすぎて変だと思い、何か他に方法があるような気がしてます。
なにか良い方法があったら教えて下さい。

627:Name_Not_Found
07/04/15 01:24:01
先頭の1文字で判断できるんじゃねえの?

628:Name_Not_Found
07/04/15 04:17:28
>>626
有限オートマトン

629:Name_Not_Found
07/04/15 12:41:15
Operaでセレクトボックスの選択肢を
selectObject.selectedIndex = i や
selectObject.options[i].selected
で変更すると、セレクトボックス内に無駄な空欄ができてしまうのですが
空欄を発生させずに選択肢を変更する方法はありませんか?

630:Name_Not_Found
07/04/15 14:02:52
innerHTMLでoptionを再出力

631:Name_Not_Found
07/04/15 16:11:19
JavaScriptで擬似Captcha認証できるもの作ったんだけど需要無いよね。。


632:Name_Not_Found
07/04/15 16:33:44
>>631
それはCaptchaとしての役割を果たすのか?
たとえば閲覧者に「1234」という文字を入力させるとして、
その文字がJavaScript中に含まれるならそれはCaptchaじゃないよね。
URLリンク(takagi-hiromitsu.jp)

633:Name_Not_Found
07/04/15 16:38:14
>>632
入力したMD5ハッシュを求めてマッチするか調べるものだから大丈夫かと。
とりあえず作ったやつ
URLリンク(tokati.jpn.ch)


634:Name_Not_Found
07/04/15 16:38:57
入力した文字のMD5ハッシュを求めて~ の間違いね。


635:Name_Not_Found
07/04/15 18:49:13
>>633
画像が固定だったら意味ないのでは?
それに画像のファイル名とパスワードが一対一対応だから
ファイル名調べればパスワードわかっちゃわない?


636:Name_Not_Found
07/04/15 19:16:37
>>633
>>635 の言う通りで、あらかじめファイル名の入った配列を
なめて下調べしておき、乱数で出た現在の名前と比べる
という手法で機械的に楽に通過されて、効果が薄い。

根本的に「JS/Flashが無効だと…」みたいな問題もあるけど、
画像(入力させる内容)と1対1でFlashを用意するのではなく
単体のFlashに引数として渡してそっち側で処理させれば、
実用性は高まりそう。

どうでもいいけど、権利表記消すならリンクくらいつけて
おかないと印象悪くね?

637:Name_Not_Found
07/04/15 20:05:11
>>630
できました!ありがとうございます。
innerHTMLでの再出力は盲点でした。

638:Name_Not_Found
07/04/15 22:48:31
>>636
そうすね。表記つけるべきでしたね。

フラッシュのプログラムはまだやったことが無いのですが出来たらもっとよくなりそうですね



639:Name_Not_Found
07/04/15 23:02:02
表記入れました。あとはFlashの勉強っと


640:452
07/04/16 03:20:51
ざっと組み上げてみました
URLリンク(www.geocities.jp)
なんぜかhtaだと弾かれるので、.htmlを消してhtaにしてください
言うまでもありませんが、save_dir=は適当に変えてください
そのフォルダーにxmlファイル作ります

で、sendの行でかなりの確立で
"指定されたリソースは見つかりません"と出ます
原因と改善方法教えてください

641:Name_Not_Found
07/04/16 03:32:55
確立されているなら仕方ないな

642:452
07/04/16 08:08:49
はいはい確率の間違いでした

643:Name_Not_Found
07/04/16 08:12:32
× はいはい確率の間違いでした
○ サーセン 確率ッス

644:Name_Not_Found
07/04/16 10:17:34
>>640
ブラクラ。ハードディスクフォーマット

645:Name_Not_Found
07/04/16 11:21:40
FireFoxで以下のコードでカーソルの位置が取れないのですが
どこを直したらいいでしょうか?

function getTextPoint(txtCtrl)
{
var rng = document.selection.createRange();
rng.moveEnd("textedit");
return txtCtrl.value.length - rng.text.length;
}



646:Name_Not_Found
07/04/16 12:04:57
この質問は毎スレのように出てくるね。

647:Name_Not_Found
07/04/16 12:34:42
IEってtest()ないんだね。どうしてんの、みんな?
indexじゃなくてマッチ文字列返してほしいんだけど。
教えてください。

648:Name_Not_Found
07/04/16 13:06:47
JScriptにRegExp#test()はあるし、そもそも、RegExp#test()は真偽値を返すだけでマッチした文字列を保持したりしない。

649:Name_Not_Found
07/04/16 13:16:54
>>647
Regexp#exec()でもString#match()でもできるぞ。
ドキュメンを読め。

650:647
07/04/16 14:21:14
>>648-649
サンクス。助かりますた。

651:Name_Not_Found
07/04/16 14:29:17
質問です。
function F(){ } と function F(){ ; } とではどうちがうんですか?
なぜ、後者は「;」をつけているのですか?
お答えよろしくお願いします。

652:Name_Not_Found
07/04/16 14:36:36
……。

653:Name_Not_Found
07/04/16 15:04:38
>>651
言語仕様上、関数定義は
function 名前 ( パラメタリスト ) { 関数本体 }
関数本体はSourceElements
SourceElementsは関数定義または文の並び
文は色々あるけど何もしない文は空文「;」
以上をあてはめると
function F() { ; }
ただしJavaScriptでは「;」は省略可能なので省略すると
funciton F() { }
どっちかは好みだと思う(洩れは「;」を書かない方)

654:651
07/04/16 15:10:38
>>653さん
なるほど納得です。お答えありがとうございました。

655:Name_Not_Found
07/04/16 16:58:00
すいません、ちょっと教えてください。
createElementメソッドをappendChildするときに、
document.bodyにappendChildするスクリプトをよく見るんですが、
自分でやると一度も再現したことないんです。仕方なく、オブジェクト
にIDつけてそこにappendするんですが、document.bodyにappendChildする
というのは、できるのでしょうか。ページのどこら辺にobjectが表示
されるのですか。くだらない質問ですいません。

656:Name_Not_Found
07/04/16 17:16:19
> ページのどこら辺
bodyの最後

657:Name_Not_Found
07/04/16 21:02:09
CreateTextFileでパスが見つかりませんとなるのは何故?
ファイルが無いから作ろうとしているのに、パスが見つからないってなんだよ

658:Name_Not_Found
07/04/16 21:23:21
>>653
ECMAScriptでもJavaScriptでも空文の「;」は省略できない。
関数本体が空でいいのはJavaScript/JScriptのECMAScriptに対する拡張機能。

659:Name_Not_Found
07/04/16 21:25:55
>>657
WSHでのことならWSHスレにいったほうがよくね?

WSH(・∀・)スレッド! Part 2
スレリンク(tech板)

660:Name_Not_Found
07/04/16 21:59:32
>>658
げげ、そうだったのか…

661:Name_Not_Found
07/04/16 23:36:28
セミコロンは省略できないが、右中括弧前の自動セミコロン補完により
function() {}
は仕様に適っているぞ。仕様書p22、7.9.1読んでみて

662:Name_Not_Found
07/04/17 00:36:25
>>661
ちゃんと7.9.1全部読めよ。
追加条件として、挿入したセミコロンが空文として
解釈されるような挿入は行われないって書いてあるだろ。

663:Name_Not_Found
07/04/17 01:00:04
後付けの仕様書って大変だなwww

664:Name_Not_Found
07/04/17 11:47:15
質問です。
コンストラクタの値をセットするとき、よく
Con.getName=function(){.....}
Con.setName=function(){.....}
という書き方がありますが、いつも思うのは、なぜgetが先に
来ているのだろうと。set,getの方が理にかなっていませんか?
それとも、何かこの並びには理由があるんでしょうか。
ご教示ください。

665:Name_Not_Found
07/04/17 11:51:16
>>664 そのsetが先というセンスはついて行けない感じ。
(1) abc順
(2) getだけでsetがないものは普通にあるので
(3) setの方が呼ぶ回数が少ないのが普通

666:Name_Not_Found
07/04/17 12:16:59
ajaxで外部HTMLを呼び出すと日本語が文字化けしてしまうのですが仕様ですか?
また文字化けを解消する方法はないでしょうか?

667:Name_Not_Found
07/04/17 12:20:25
UTF-8じゃないからじゃないか

668:Name_Not_Found
07/04/17 13:18:10
>>662
確かに。これはもはや仕様書のミスだな。

669:Name_Not_Found
07/04/17 15:23:45
質問なのです。
今DOMをいじっていて発見したのですが、
IEとFirefoxに差異が生じました。

<div id="hoge">
<p>あいうえお</p>
</div>

alert(document.getElementById('hoge').lastChild.nodeName);

上記を実行した場合、IEではアラートで「P」と出ますが、
Firefoxではアラートで「#text」と出ます。

これは仕様でしょうか?
IEとFirefoxで同じように最後の要素が「P」であることを調べるにはどうすればいいでしょうか?
よろしくお願いします。

670:Name_Not_Found
07/04/17 15:29:43
改行しなければいいんじゃない

671:Name_Not_Found
07/04/17 15:30:49
>>670
あ、そういうことでしたか。
ありがとうございます。

672:Name_Not_Found
07/04/17 16:35:28
会社の同僚がnullのことをナルだっていうんです。
ずっとぼくはヌルって言ってたんですが。同僚が正しいですか?

673:Name_Not_Found
07/04/17 16:46:31
>>672
URLリンク(ja.wikipedia.org)(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)


674:Name_Not_Found
07/04/17 19:18:45
なるぽ

675:672
07/04/17 19:21:26
>>673さん ありがとうございます!
そうなんだぁ。同僚とはソフトランディングできそうです。多謝。

676:Name_Not_Found
07/04/17 19:22:21
つーかそんな程度でギクシャクする関係かよ。

677:Name_Not_Found
07/04/18 17:07:08
sage


678:Name_Not_Found
07/04/18 17:13:39
age

679:Name_Not_Found
07/04/18 17:43:35 9i+codGK
今どこが.focus() 状態(<input>などが)にあるかを JavaScript で知りたいのですがどのように行えばいいのでしょうか?

680:Name_Not_Found
07/04/18 18:30:07
>>680
全てのinputのonfocusハンドラに何か埋めこんでおけば?

681:Name_Not_Found
07/04/18 18:55:36
>>680
今はそんなことするの?
アクティブエレメント見れば一発だと思ってた。

682:Name_Not_Found
07/04/18 20:47:09
>>681
それIE専だよね。質問者がIE専でよければということで。

683:Name_Not_Found
07/04/18 21:05:58
>>682
ネットスケープにもあったけど、ほかのには無いのか
IEがデファクトなんだからあわせとけよなぁ

684:679
07/04/18 22:11:55 9i+codGK
IE6,7、Opera9、Firefox2で動く方法を探しています。
IE以外はonfocusでやるって方法がベストな感じですね。

685:Name_Not_Found
07/04/18 22:22:26
documentにfocusハンドラを使うとかね

686:Name_Not_Found
07/04/18 23:12:09
>>685
いや、それには穴がある。

なんの落とし穴か思いつかないけど、多分失敗する。
直感だけど

687:Name_Not_Found
07/04/18 23:17:57
>>686
落とし穴があるのはお前の直観じゃねーかよw

688:Name_Not_Found
07/04/18 23:36:48
windowやらdocumentやらにイベントを指定したら、
イベントが大量に飛んできてビビったような。

689:Name_Not_Found
07/04/18 23:38:44
すいません。matchって、matchしないときは何が返るんですか?
matchの結果(p)のp.lengthが、nullまたはobjectじゃない、って怒ら
れるんですけど、p>0で分けても怒られっぱなしです。教えてください。

690:Name_Not_Found
07/04/19 00:15:57
>>689
もちろんmatchしないときはnullが返るとも。
var result = str.match(/.../);
if(result) { マッチした時の処理; }
とかしないとね。

691:689
07/04/19 09:43:21
>>690さん
ありがとうございます。できました!単純にうれしいです (^^;

692:Name_Not_Found
07/04/19 15:29:15 xd9ij4b9
<input type="text">内で何がどう選択状態にあるかを知るにはどのようにするのでしょうか?

画面上にテンキーを表示してそれをクリックすると<input>に数字を入れるというのを作っているのですが、

<input>に「1234」と入っていて、12 をマウスで選択して画面上のテンキーの9を押下すると 934 としたいのですが、<input>で何がどう選択になっているかを知る方法が分かりません。
(Firefox、IE)

宜しくお願いします。

693:Name_Not_Found
07/04/19 15:54:45 Umie8bIv
沖縄県の方へ(命に関わる注意事項です)

沖縄県での選挙ですが、どうか民主党だけは避けてください。県民の生命に関わる可能性があります。
民主党の最大の公約は一国二制度(※)ですが、一度「一国二制度 沖縄」等で検索をお願いします。
この際、民主党のHPで調べても良いです。以下の注釈↓と矛盾することは書いてないはずですから…

※一国二制度
 簡単に言えば沖縄を中国と日本の共有物にし、そこに3000万人の中国人を入植させます。
 (つまり沖縄人口の 96% を中国人にして、実質、沖縄を中国人の居住地とします。)
 さらに「自主」の名の下、沖縄で有事が起きても自衛隊は干渉できません。
 3000万人の中国人が、少数派となった130万人の日本人に何をしても、です。
 そして中国人の反日感情の強さは、ほとんどの日本人の理解を超えるものです。

今回の選挙で民主党が勝った場合、「自主」「発展」を連呼しつつ段階的に進めていくことになります。
自主と言っても、自主を認めるのが「住人の96%が中国人となった」後だということに気をつけてください。
発展と言っても、新沖縄の少数派となった「少数民族日本人」の発展ではないことに気をつけてください。

694:Name_Not_Found
07/04/19 16:45:22
スレ違いのコピペにレスして恐縮だけど、 たしかに「矛盾」はしてないけど、中国人なんて一言も書かれてないだけ。 沖縄を南極にし、そこに3000万匹のペンギンを入植させます。 と言っても「矛盾」はしてない。

695:Name_Not_Found
07/04/19 17:49:41
>>692
selectionとかで検索すれば。過去スレ検索できたっけ。

696:Name_Not_Found
07/04/20 15:12:46
flashスレから板違いで誘導されてきました。

hoge.html?12345 にアクセスしたときに ?12345 が location.search という場所に入るというのは分かったのですが
この値をhoge.swfに送る方法が分からず困っています。
FlashVarsを使えといわれましたがよくわかりません。
優しく回答お願いします。

697:Name_Not_Found
07/04/20 15:34:16
flash板で聞くべき案件じゃね?
FlashVarsなんて聞いたことない。

698:Name_Not_Found
07/04/20 15:41:21
>FlashVarsなんて聞いたことない
いくらなんでもそれは…

699:Name_Not_Found
07/04/20 15:45:12 YjKgW1v0
>>696
JavaScript で hoge.swfに送るという考え方が間違いで、
FlashのActionScript側でURL読み取ればいい。
URLリンク(livedocs.adobe.com)
で自分自身のURL読み取れるからそれで何とかしろ。

ちなみに FlashVars は
URLリンク(www.adobe.com)
だけど、今回の要件を実現したいのならそんな面倒なことする必要ない。

700:Name_Not_Found
07/04/20 16:13:07
すいません、上のリンク先英文ばかりでコードが書かれてないんですが
日本語の解説はないでしょうか・・・

701:Name_Not_Found
07/04/20 16:22:02
>>700
ちょっとは自分で考える脳みそないのか?

702:700
07/04/20 16:42:05
バカで悪かったですね。あなたのはマルコメでしょ。

703:Name_Not_Found
07/04/20 16:51:26
今ので誰にも教えて貰えなくなったな

704:Name_Not_Found
07/04/20 17:05:21
この流れちょっとワロタw

705:Name_Not_Found
07/04/20 23:40:48
<script type="text/javascript">
<!--
document.write('<img src="./hoge/hoge.cgi?type=write&file=hoge&jsref=' + document.referrer + '&scw=' + screen.width + '&
sch=' + screen.height + '&scd=' + screen.colorDepth + '&cpu=' +navigator.cpuClass + '&cok=' +navigator.cookieEnabled+ '" />');
//-->
</script>
<noscript>
<p><img src="./hoge/hoge.cgi?type=write&file=hoge" alt="" /></p>
</noscript>

これを外部jsにしたいんですがどう書けばいいでしょうか?
よろしくお願いします

706:705
07/04/21 00:34:03
document.write("<img src='./hoge/hoge.cgi?");
document.write("type=write","&file=hoge","&jsref=",document.referrer,
"&scw=",screen.width,"&sch=",screen.height,"&scd=",screen.colorDepth,
"&cpu=",navigator.cpuClass,"&cok=",navigator.cookieEnabled);
document.write("' width='1' height='1' alt='' />");

<script type="text/javascript" src="./hoge/hoge.js"></script>

調べながら書いてみました…
これで合ってますかねー?自信ないです

707:Name_Not_Found
07/04/21 00:41:21
合ってますかねー、って人に訊くよりブラウザに訊け

708:Name_Not_Found
07/04/21 01:29:30
ワロタ

709:Name_Not_Found
07/04/21 02:26:28
本人にこのスレ見せられた俺は笑えない

710:Name_Not_Found
07/04/21 09:21:27
このスレは、いい加減なものを貼って人にまちがい探しをさせるところで
はない。まず自分でやる。エラーが出たらそのエラーを書けば、親切に
教えてくれるかもしれない。

711:Name_Not_Found
07/04/21 11:05:04
>>709
本人知ってるなら、駄レス書き込むよりアンタが教えてやんなよ。ヴォケ

712:Name_Not_Found
07/04/21 13:48:32
質問なのですが、
textareaの中身を書いた後、それをcloneNode(true)すると、
IEではtextareaの中身までクローンが生成されますが、
Firefoxなどではtextareaの中身は空になります。

また、Netscape7.1ではinputのvalue値まで空になります。
これらはバグでしょうか?

何か良い代替案はありますでしょうか?

713:Name_Not_Found
07/04/21 14:27:44
>>712
cloneしたときそれらの中身もコピーされるなんて仕様ではないと
思うが。まあ対策としてはcloneする前の奴の値を別途コピーする
んじゃないの?

ついでに質問なんだけど、<input type="text" value="xxx">が
あったとして、そのxxxをyyyに手で書き換えてからコピーした
とき、コピーしてできた入力欄の中身はxxxであるのが正しいと
思っているのかyyyであるのが正しいと思っているのかどっち?

value属性も全部コピーされるんだからxxxが正しいような気が
するけど…

714:Name_Not_Found
07/04/21 19:38:22
質問です。
MouseOverでポップアップメニューを表示させたとき、Safari(Mac)で横幅が指定した横幅になりません。
何か回避方法ありませんか?
ロールオーバーで縦にいくつか画像を表示させて、それぞれの画像にアンカー打つことは出来ませんよね?

715:Name_Not_Found
07/04/21 20:06:35
>>714
>>2 (2)

716:Name_Not_Found
07/04/21 21:19:27
>>715
今アップしてきます

717:714
07/04/21 21:35:40
URLリンク(mpeg.web.fc2.com)
ここのネットワークのところです。
よろしくお願いします

718:Name_Not_Found
07/04/21 22:00:19
>>717
金取って仕事してるんなら自力でやれよ。
答えてやるとして、金払うんだろうな?

そのクラ探してチクってやるために、
とりあえず保存しといた。

719:Name_Not_Found
07/04/21 22:07:01
釣られんのはえーなw

720:714
07/04/21 22:13:03
>>718
自分でやりますよ?あるかないか聞いてるんです><
ちなみにボランティアです><

721:Name_Not_Found
07/04/21 22:18:37
>>720
あ、そうなの?
こりゃ失礼。

722:Name_Not_Found
07/04/21 23:11:03
ママー!ここの人またケンカしてるよ。ボランティアです、だって。

723:Name_Not_Found
07/04/22 00:02:12
>>714
指定した幅の何かを置けばおk

724:Name_Not_Found
07/04/22 00:48:53
まあ、ボランティアが無償であるっていう考えがまず間違ってるんだけどね・・・

725:Name_Not_Found
07/04/22 01:07:43
           i::::::::/'" ̄ ̄ヾi
           |:::::::| ,,,,,_  ,,,,,,|
           |r-==( 。);( 。)
           ( ヽ  :::__)..:: }
        ,____/ヽ  ー== ;  ほほう 間違ってるの?
     r'"ヽ   t、   \___ !
    / 、、i    ヽ__,,/
    / ヽノ  j ,   j |ヽ
    |⌒`'、__ / /   /r  |
    {     ̄''ー-、,,_,ヘ^ |
    ゝ-,,,_____)--、j
    /  \__       /
    |      "'ー‐‐---''

726:Name_Not_Found
07/04/22 04:09:01
人が億劫に思うことを進んでやる気持ちこそがボランティア

727:Name_Not_Found
07/04/22 10:05:11
質問です。
配列要素をdelete演算子で削除してもindexは残ってしまうん
ですが、配列から完全に削除するにはどうすればいいですか。

728:Name_Not_Found
07/04/22 10:19:39
>>727
そんなはずはない。ソースコード出してみな

729:727
07/04/22 10:40:24
>>728さん
ありがとうございます。すいません。勘違いでした。forgetしてください。

730:Name_Not_Found
07/04/22 11:10:41
form内でtabキー移動する際のfocusについて質問です。

textareaなどが複数ある画面で楽に入力できるよう、
tab移動した際に「リンクが貼ってある画像を飛ばして」
formのelementだけfocusさせるには
どうしたらいいでしょうか?

「該当画像にfocusが来たら次のelementに飛ばす」と考えたのですが
画像とelementはまとめて数えられませんよね?

ヒントをいただけると幸いです。

731:730
07/04/22 11:26:09
730です

>tab移動した際に「リンクが貼ってある画像を飛ばして」
ちなみに画像も複数ある画面です。
「○番目がfocusされたら×番目に飛ばす」とは指定できず、
条件としては「画像の次のelementに飛ばす」となります。

732:Name_Not_Found
07/04/22 11:59:25
>>730-731 ホレ。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
function test(elt) {
while(elt.nextSibling) {
elt = elt.nextSibling;
if(elt.nodeName == 'INPUT') { elt.focus(); return; }
}
}
</script>
<form action="#"><div>
<input name="t0">
<a href="#" onfocus="test(this)"><img src="t0.png" alt=""></a><br>
<input name="t1">
<a href="#" onfocus="test(this)"><img src="t0.png" alt=""></a><br>
<input name="t2">
<a href="#" onfocus="test(this)"><img src="t0.png" alt=""></a><br>
<input name="t3">
<a href="#" onfocus="test(this)"><img src="t0.png" alt=""></a><br>
</div></form></body></html>

733:Name_Not_Found
07/04/22 12:03:01
>>732
ありがとうございます。
でも僕の欲しいscriptではありません。
逝ってよし。

734:Name_Not_Found
07/04/22 12:07:30
それをもとに好きなように直すのがいいんでないの。
まったくアンタの注文通りに書く奴なんていないと思うよ。
(そもそもアンタの不自由な日本語通りに作ったつもりだけどね)

735:Name_Not_Found
07/04/22 12:10:50
>>734
いらねーもんはいらないんだよ
無駄な作業乙wwww

736:Name_Not_Found
07/04/22 12:22:28
いや、自分で面白そうだと思って作るだけだからご心配なく。

737:Name_Not_Found
07/04/22 12:27:14
負け惜しみキタコレ

738:Name_Not_Found
07/04/22 12:30:54
過去スレ読めばどうだか分かるでしょ。

739:730
07/04/22 12:54:44
偽者がいるようで・・・

>>732
nextSiblingって初めて知りました。
ちょっと試してみますね。
ありがとうございました!

740:Name_Not_Found
07/04/22 12:55:40 yuD9uW6t
iframe内のURLの変更方法を教えてください。

741:Name_Not_Found
07/04/22 13:04:30
過去スレよんだらメモリリークで叩かれまくってますねw

742:Name_Not_Found
07/04/22 13:28:11
もちろんこのスレでは勉強させてもらっているよ。
で、自分で面白いと思えることは回答すると。それだけ。

743:Name_Not_Found
07/04/22 13:29:29
>>740
iframeでname指定するでしょ。
window.frames.指定した名前.location.href = '行き先URI';

744:Name_Not_Found
07/04/22 13:44:23
>>742
スレ違いのレスばっかすんなよ低脳
荒らし体制ないなら半年ROMってろ

745:Name_Not_Found
07/04/22 15:14:43
ママー!またケンカやってるよ。半年ROMってろだって・・・

746:Name_Not_Found
07/04/22 17:10:12
>>744 しか言い返すネタが無くなった家具師、乙。

747:Name_Not_Found
07/04/22 17:18:58
JSが流行った(流行っている)のは、メモリーリークに気付かされるような使用を堂々とされ始めたからだが、結果的に禁じ手が増えてしまって、面白みが失せたな。

748:Name_Not_Found
07/04/22 17:30:09
あっという間にブラウザ死ぬんじゃ困るけどふつーに使って
差し支えない程度ならリークさせたっていいと思うけどね。
ま、それぞれの作者が決めることでいいんでないの。

749:Name_Not_Found
07/04/22 18:15:59
>>748
というか、プログラムの活動寿命が短いから
どういうふうに書いても許されるんだよな。

これが3日間ブラウザ開きっぱなしとかされると
死んだりしてしまう原因なんだが
リフレッシュを仕込んでおくことで回避した。

750:Name_Not_Found
07/04/22 20:33:05
>>749が何も分かってないんだがどうしようかw

751:Name_Not_Found
07/04/22 20:43:47
>>749
リフレッシュで回避されるなら、ほっといてもGCされるから。そうじゃないから問題になったんだろアホ。

752:Name_Not_Found
07/04/22 20:57:40
>>750
ま、こいつ>>749もそこらぢゅうにいる教えたがりのボケさらし。
氏かとにかぎる。だが、マにうけるにんげんがいるから迷惑なんだな。

753:Name_Not_Found
07/04/22 21:37:57
>>752


754:Name_Not_Found
07/04/22 23:24:18 W935ON1F
コンボボックスの初期選択値を指定するにはどうすればいいのでしょうか?
例えばコンボボックス内に

りんご
みかん
ぶどう

と入っていた場合、HTMLを表示した際、最初にコンボボックスで選択されてるのが「みかん」になってると
いう風にしたいのですが…。
ちなみにコンボボックスの中身の順番は変えないことと
データベースから内容を拾ってコンボボックスの項目にしているため、
データベースの内容が変わってもHTML側のソースを変更しないようなものを作りたいのですが

755:Name_Not_Found
07/04/22 23:41:09
>>754
データベースから拾っているのなら初期選択値に
<option ... checked>...</option>
とcheckedをつけるのがまっとうな方法だと思うけど。
それがどうしてもできないのなら、selectにID振って
<body onload="document.getElementById('ID名').selectedIndex = 番号">


756:Name_Not_Found
07/04/22 23:42:37
>>755
すまん、<option ... selected>...</option>だった。

757:Name_Not_Found
07/04/23 00:07:41 14+3y0aJ
処理を一定時間とめる方法はありますか?

758:Name_Not_Found
07/04/23 00:10:38
>>757
ありません。とめた後やりたい処理を関数の形にまとめて
setTimeout(関数名, 1000);
などのようにして一定時間後に実行させることならできます。

759:Name_Not_Found
07/04/23 00:11:14
document.write("ちょっとまってね(はーと)");

760:Name_Not_Found
07/04/23 00:12:21
もしかしたら「alert('メッセージ')」でOKボタンを押すまで
全部止まるとかそういうことを求めていたりして?

761:Name_Not_Found
07/04/23 14:07:27
こういうやり方はしてはいけない。
var interval_sec = 3;
var t = new Date().getTime() + interval_sec * 1000;
while((new Date().getTime()) < t){};


762:Name_Not_Found
07/04/23 18:26:49
>>761
試してないけど、なんかお前凄いな

763:Name_Not_Found
07/04/23 19:00:10
>>761
大したやつだ・・・

764:Name_Not_Found
07/04/23 19:14:33
場合によっちゃブラウザ固まって、やむをえず強制終了することになるからよい子は真似しないように!
>>758がベター

765:Name_Not_Found
07/04/23 19:41:50
>>757の質問は古典的なFAQだが、結論は出ている。
JavaScriptでは不可。無理すれば想定内のトラブルを招く。

766:Name_Not_Found
07/04/23 19:59:09
想定内

767:Name_Not_Found
07/04/23 20:27:21
>>765
今は出来るようになったよね。

768:Name_Not_Found
07/04/23 20:30:42
ああ。ついさっき天才が現れたからな

769:Name_Not_Found
07/04/23 21:35:48
>>767の「今は」ってのは、2007/04/23(月) 14:07:27 のことだな。

770:Name_Not_Found
07/04/23 23:37:53
俺が処理を止めた
2007/04/23(月) 14:07:27の時点でな

771:Name_Not_Found
07/04/24 00:18:46
ヤツはもうどこへも向かうことはない

772:Name_Not_Found
07/04/24 11:06:50
     ,. ''''''''''' ‐-,.,,._     ,....;.;.'
   ,-." .::::::::::::::::::::::::::::`::::::::::::.::;;:,:'
  ,':::::: .:::::::::::::::::::::::::::::::::::::::::::::,;"ヽ..,
  i::::: .::::::::::::::::::::::::::::::::::::::::::::::::,.;;:'' ヽ、                 もうだめぽ
  i::: .:::::::::::::::::::::::::::::::::::::::ヽ::、   .  ,;>,
   i .:::::::::::::::::::::::::::::::::::`:`:、``  ,,/  `:、
   ヽ;`、`:、''T~` ``iヽ:ヾ、::::、  ,/      `:、
    ``:、` `.!:::  l、 `:、;`:、;/           ヽ、
        i::   .!_ ヽ、`、::`         :..   `,>
        │  :l `` ヽ`、:::::::::      :::.../》、
        │ .:l  ,,.,.-‐rヽヽ::::::     ;//ヽ`ヽ,
        │ ::::l''´   i´ リ ヽ、:::   /....ヘ i i  i ‐,r‐r-r‐、
        │ ::::l-‐‐- 、ゝ ノ / /`''''''´';'~  i i  i j(,_l_l,l,l,l,l,ノ
        │::::::l     レ ノ ノ  ハ  \  i i `v'
        ,_E=ョ  ‐-,-`;., ノ  ノ  i    l  i i/
       i 三__y`:'、,;"   `゙`'''''‐,-r¬、__!,.,,..''''
              `‐-- ..,、,,,,,,,, i,,キニニ`:、
                     `ヽニニ.ノ


773:Name_Not_Found
07/04/24 14:49:31
すいません。exec()はIEでバグがあるということですが、いまの
versionでは大丈夫でしょうか(IE6)。ご教示お願いします。

774:Name_Not_Found
07/04/24 15:06:01
>>773
どんなバグのことだよ?w

775:773
07/04/24 16:17:11
>>774
すいません。言葉足らずでした。えっと、いろいろあるらしいです。
gするとマッチがおかしくなるとか、inputが使えないとか。オブジェ
クトを関数渡しもできないとかも聞きました。IEどうしようもないで
す、これじゃ。

776:Name_Not_Found
07/04/24 16:27:11
>>775
具体的にアンタがやりたいことは何なのさ。このスレでIEの
Regexp#exec()がおかしいからやりたいことができないという
結論になったことは未だかってないんでね。まあ勝手にIE駄目
という結論にして何もしたくないのならご自由にだけど。

777:Name_Not_Found
07/04/24 16:55:18
まぁ、いまのversionがIE6だしな。しょうがないよ。

778:773
07/04/24 17:38:01
>>775
おまえ、ばかだろ。日本語読めんのか、ヴォケ。ちゃんとやりたいこ
と書いてあるだろ。gしたり、inputが使えないんだよ。そんな読解
力でよく生きてるな。

779:Name_Not_Found
07/04/24 17:48:20
なんで Regexp.input が使いたいのか分からないなあ。
普通に引数で渡せばいいじゃんと思うが。アホな私に
分かるように説明してくれないかな。

780:Name_Not_Found
07/04/24 17:54:38
>>775
「未だかってないんでね」<----こういう言い方のは関西に多いそうだ



781:Name_Not_Found
07/04/24 18:26:07
IEのRegexp#exec()のバグってこれか~。
URLリンク(www.xaprb.com)
こういうのを回避するのならreplace()で関数を渡すのがいいかと。
想像で語っているけど…

782:Name_Not_Found
07/04/25 14:56:23 sg40PKl2
引き継いだJSファイルが一行で書いてあったんだが。。。

お前らってこんな書き方してんの?w
読みにくくてしょーがねー

783:Name_Not_Found
07/04/25 15:00:36
意味不明。

784:Name_Not_Found
07/04/25 15:52:33
>>782
はい。ふつーに、document.write('voke');と書きますが、なにか?

785:Name_Not_Found
07/04/25 16:26:57
>>782
改行が読めなかったとか
あるいは、ファイルサイズを減らすために改行を消したとか

786:Name_Not_Found
07/04/25 17:14:16
被害妄想狂のなせる枝だな。たいしたことないモノに限ってよくある。

787:Name_Not_Found
07/04/25 18:36:39
>>782
ボタン一つで直せることをいちいち報告しなくていい

788:Name_Not_Found
07/04/25 19:41:15
質問です。
str='abcdefghijklmnop';という文字列があって、この文字列はlengthは
同じですが、文字は変化します。常に「hijk」の部分に来る4文字を抜き
出すにはどう書けばいいですか。正規表現でやりたいんですが、みなさん
に評判のよくない「とほほ」を見たら、\2で(...)の2番目を取得できると
書いてあるんですが、例がありません。ご教示ください。お願いします。

789:Name_Not_Found
07/04/25 19:57:53
>>788
str.substr(7,4);
文字列処理に何でも正規表現を使おうとするのはPerl厨の悪い癖

790:Name_Not_Found
07/04/25 20:01:44
substrはECMAで廃止。ファイルは将来のゴミ決定。

791:Name_Not_Found
07/04/25 22:23:45
>>790 肝稲小間江。


792:Name_Not_Found
07/04/25 22:29:46 IT97SZSN
URLリンク(www.city.yokohama.jp)
上記サイトのヘッダーに 文字サイズ "大" "中" "小"
と文字サイズを切り替えられるようになってるんだけど、

インラインフレームの文字サイズだけは変わらないんですよね。

インラインフレームも同時にJSで文字サイズ切り替えられることって現実的に無理しょうか?

793:Name_Not_Found
07/04/25 22:36:28
ページ上のGUIで文字サイズを変えさせようとするのは無意味

794:Name_Not_Found
07/04/25 22:36:49
>>792
ふつうにできるだろ。
しかしそもそも文字の大きさを切り替えるコントロールみたいなものがあっても邪魔なだけだろ。

795:Name_Not_Found
07/04/25 23:03:41 IT97SZSN
たしかに 無意味で邪魔かもしれないですけど やってみたいんです。
ふつうにできるものなのでしょうか
検索しても 実例がないもので・・・
簡単に教えていただけると幸いです


796:Name_Not_Found
07/04/25 23:05:32
>>793
スキンなんか作ってると、便利なのよ

797:Name_Not_Found
07/04/25 23:05:58
ちょっと検索すりゃすぐだろ>>743

798:Name_Not_Found
07/04/25 23:11:31 IT97SZSN
全然でてこないです・・・
"文字サイズ" "変更" "インラインフレーム"
といった感じに検索してるんですが;

799:Name_Not_Found
07/04/25 23:32:56
>>798
その組み合わせじゃ出ないでしょ。まず一般の文字サイズ変更を
学習して、次にインラインフレームのbodyを取り出す方法を学習
して、両方を組み合わせればできると思うよ。

800:Name_Not_Found
07/04/25 23:34:31 IT97SZSN
そうですよね すいません
ちょっと 学習してみます

801:Name_Not_Found
07/04/25 23:36:17
<script>
function changeFontSize(per) {
document.body.style.fontSize = per+"%";
var iframes = document.getElementsByTagName("IFRAME");
for (var i=0; i<iframes.length; i++) {
try{
window[iframes[i].name].document.body.style.fontSize = per+"%";
} catch (e) {
};
}
}
</script>

<input type="button" value="小" onclick="changeFontSize(80)">
<input type="button" value="中" onclick="changeFontSize(100)">
<input type="button" value="大" onclick="changeFontSize(120)">
<p>あああああああええええええええおおお</p>
<iframe src="どこか" name="askfjf">
<iframe src="どこか" name="rapeef">
<iframe src="どこでも" name="fwoiea">


802:Name_Not_Found
07/04/25 23:49:27 IT97SZSN
>>801

すいません ありがとうございます!
試したら動作しました!

803:Name_Not_Found
07/04/26 01:25:08
寝ます

804:Name_Not_Found
07/04/26 01:30:05
もっはよう

805:Name_Not_Found
07/04/26 15:07:57
質問です。
function C() { this.val = 0; this.f=F }
function F(){return this.val;}
というのがあって、Cのインスタンスpをとります。
ってp.f()からthis.valを取得しようとするとNaNになってし
まうのですが、どうしてででょうか?

806:Name_Not_Found
07/04/26 15:13:38
JavaScriptにおけるthisとはいったいなんなのかべんきょしといで。

807:805
07/04/26 15:23:49
>>806
理由を聞いてるんだよ。知らないなら黙ってろ、ヴォケ。

808:Name_Not_Found
07/04/26 15:32:31
あー、sage質問に反応した俺が悪かった。
まずはID晒してでなおしてこいや >>805

809:Name_Not_Found
07/04/26 15:50:04
>>805
this.valがundefinedだから

810:Name_Not_Found
07/04/26 16:52:27 3K9FOvdt
>>805が痛いから

811:Name_Not_Found
07/04/26 16:52:35
javascript:function C() { this.val = 0; this.f = F; } function F() { return this.val; }; p = new C(); alert(p.f())
IE,Firefox,Opera 全部 0

812:Name_Not_Found
07/04/26 16:59:26 ySN709L5
質問です。
javaScriptのある配列に、別ファイルのcsvデータ(,区切りのやつ)を
一個一個配列に入れたいのですが
エイジャックス以外に、何か方法はありませんか?

813:805
07/04/26 17:14:15
>>808
ID晒すと何かいいことがあるのか?やっぱアンタは大したことないわw

814:Name_Not_Found
07/04/26 17:50:06
礼より煽る方が優先か

815:Name_Not_Found
07/04/26 17:59:54
しかし>>806>>809もかなりチンプンカンプンだぞ。

816:Name_Not_Found
07/04/26 19:01:32
- >>805,807,813 が同一人物である確証が取れない
- ID晒しておけばIDによりそれがとれる
- IDを晒さない「質問」は煽り目的の「釣り」であったり、
 質問者以外が質問者のふりをして荒らすことがある。

よって本当に質問であるのならば、IDを晒しておくべきであり、
また、sage質問は釣りであると判断しスルーすべきである。

817:Name_Not_Found
07/04/26 19:01:48
>>812
エイジャックス以外って事はJavaScript以外って事ですか?

818:Name_Not_Found
07/04/26 19:06:27
805はなんとなくちゃんと答える気をなくした

812にこたえようと思ったがXMLHttpRequest使わないとなると
IFRAMEに読み込んでやるしかなくて、その場合ブラウザやサーバの設定で
どのようなテキストで返ってくるか予想しづらいから説明しづらい

819:Name_Not_Found
07/04/26 19:40:33
>>816
OTで申し訳ないが、そんなことはないだろ。小学校のセンセイがよい子の生
徒相手じゃあるまいし。IDは変わるし故意に変えることはいくらでもできる。

820:Name_Not_Found
07/04/26 19:51:57
>>819
今回の場合は>>816が正しいんじゃね?
>>805を書いた人が>>807,>>813のように豹変するなんて考えられない


821:Name_Not_Found
07/04/26 21:05:08
ブログと2chで全然違う人いるじゃん、本人は気付かれてないと信じ込んでるみたいだけど。
あんな感じで、レス単位で豹変してもおかしくはないと思う。

822:Name_Not_Found
07/04/26 21:25:32
>>819
「IDによって自分をラベリングしとかないと釣りとみなされたりなりすましされてもしょうがないよ」
っていうこと。故意に変える奴はどうせ雑音。

823:Name_Not_Found
07/04/26 21:28:31
きみ子豹変す。

824:Name_Not_Found
07/04/26 21:28:46
答える側からしたらどうでもいいんだけどな

825:Name_Not_Found
07/04/26 21:31:53
1.んとこに
このスレに書き込むことが許されるものは以下のとおり
・質問者はageる。必ずIDを表示すること。
とでもいのいちばんで書いとけば、じゃ。

826:Name_Not_Found
07/04/26 22:18:04
別に煽ろうが何しようが2ちゃんだしいいと思うけど。痛ければ
回答されないだけでしょ。ほっとこうよ。

827:Name_Not_Found
07/04/26 22:22:56
>>805関連は>>811>>815でFAだろ
805だけでNaNになることはないから質問回答とも成り立ってない
雑音同士の喧嘩は他所でやれ

828:Name_Not_Found
07/04/26 23:40:27 rxTm9Q7O
ボタンをひとつにして
ON/OFFしたいんだけどどうすればいいですか?

function check_all() {

for (i = 0; i < document.f1.elements.length; i++) {
if (document.f1.elements[i].name == 'chk[]') {
document.f1.elements[i].checked = true; } }

}

function release_all() {

for (i = 0; i < document.f1.elements.length; i++) {
if (document.f1.elements[i].name == 'chk[]') {
document.f1.elements[i].checked = false; } }

}

//--></script>
<body>

<form name="f1">
<input type="checkbox" name="chk[]" value="TEST1">TEST1<br>
<input type="checkbox" name="chk[]" value="TEST2">TEST2<br>
<input type="checkbox" name="chk[]" value="TEST3">TEST3<br>
<input type="button" value="全てチェック" onClick="check_all();"><br>
<input type="button" value="全てはずす" onClick="release_all();">
</form>

829:Name_Not_Found
07/04/27 00:27:17
<script>
var nextcheckflg = true;

function check_on_off(){
if(nextcheckflg){
//全てチェックする処理
nextcheckflg = false;

} else {
//全てチェックを外す処理
nextcheckflg = true;

}
}
</script>



<input type="button" value="全てチェックor全て外す" onClick="check_on_off();">

例えばこんな感じでいかが?


830:Name_Not_Found
07/04/27 00:27:59 WDzAsdqc
}が一個多かったw

831:Name_Not_Found
07/04/27 00:57:00
あ、多くないのか。酔ってるからいかんな・・・。

832:Name_Not_Found
07/04/27 01:29:18 jGz2pSA4
ありがとうございますー
無事できました!

833:Name_Not_Found
07/04/27 10:35:07 423/0RGG
function myCheck(){
myCnt=0;
for (i=0; i<document.form.length-1; i++){
if (document.form.elements[i].checked == true){
myCnt++;
}
}
if (myCnt == 0) myURL = "tab1";
else if (myCnt == 1) myURL = "tab2";
else if (myCnt == 2) myURL = "tab3";

location.href = myURL;
}

上記の処理が終わったら html上に配置されている↓のいづれかをクリックさせる動作を行いたいのですがどうすればよろしいでしょうか?

<input type="button" onclick="tab1" name="tab1">
<input type="button" onclick="tab2" name="tab2">
<input type="button" onclick="tab3" name="tab3">

location.hrefをクリックさせる処理に書き直せばいいんだと思うのですが、そういった処理をさせれる関数がわからなく困ってます。
どなたか教えて頂ければ幸いです。

834:Name_Not_Found
07/04/27 10:52:52
わからなくて困っています、なら調べるよろし


835:Name_Not_Found
07/04/27 10:57:22
クリックとはユーザーが任意のタイミングで行う挙動である。

836:Name_Not_Found
07/04/27 11:03:24
クリックとはスクリプトが企図されたタイミングで行う挙動でもある。

837:Name_Not_Found
07/04/27 11:05:32 423/0RGG
<html>
<head>
<script type="text/javascript"><!--
function myCheck(){
myCnt=0;
for (i=0; i<document.form.length-1; i++){
if (document.form.elements[i].checked == true){
myCnt++;}
}
if (myCnt == 0) myURL = "tab1";
else if (myCnt == 1) myURL = "tab2";
else if (myCnt == 2) myURL = "tab3";

↓の部分で3つのボタンのいづれかをクリックさせる処理をしたい。↓
location.href = myURL;
}
// --></script>
</head>
<body>
<form name="form">
<input id="b1" type="checkbox"><input id="b2" type="checkbox"><input id="b3" type="checkbox">
<input type="button" onclick="myCheck()" value="実行">
</form>
<INPUT TYPE="button" value="青ボタン" name="tab1" onclick="document.bgColor='lightblue'">
<INPUT TYPE="button" value="赤ボタン" name="tab2" onclick="document.bgColor='#ff8080'">
<INPUT TYPE="button" value="黒ボタン" name="tab3" onclick="document.bgColor='#000000'">
</body>
</html>

もっと分かりやすく書いてみたのですけど、不可能なのでしょうか?

838:Name_Not_Found
07/04/27 11:08:04
クリックとは我々の遺伝子に組みこまれたプログラムが企図したタイミングで行う挙動でもあったりなかったり。

839:Name_Not_Found
07/04/27 11:11:04
何がやりたいのか良く分からん。
チェックボックスがチェックされてる数によって行き先を変えるのか?

840:Name_Not_Found
07/04/27 11:13:14 423/0RGG
わかりずらくてすいません;;;
チェックボックスを何個 チェックされたかによって
その下の3つのボタン いづれかをクリックされる処理にしたいんです。

841:Name_Not_Found
07/04/27 11:17:54
> クリックされる処理
「クリック可能なボタンにする」ってこと?
禅問答じみてきたぞ。

842:Name_Not_Found
07/04/27 11:24:48 423/0RGG
チェックボックスを何個かチェックをいれて 実行を押すと
その下の3つのボタン "青" "赤" "黒" がクリックされる処理になって背景が変わるようにしたいんです。
何度もすいません;

843:Name_Not_Found
07/04/27 12:05:15
>>842
何個入れたら何色にしたいんだ?

844:Name_Not_Found
07/04/27 12:09:26
あーわかった

document.getElementsByName("tab"+(myCnt+1))[0].onclick();

チェック3個入れたらエラー起こすから自分で何とかしなさい。

845:Name_Not_Found
07/04/27 12:18:23
>>842
まず、HTMLから勉強汁。動作わかってないだろ?うざいからもうやめてくれ。

846:Name_Not_Found
07/04/27 12:51:35 WXiSvKMz
>>842
あんたの質問は ここに向いていない.
以下に移動することをお薦めする:
スレリンク(hp板)l50
 "手取り足取り教えるJavaScriptスレ"

求めよ ! さらば与えられん.

847:Name_Not_Found
07/04/27 13:28:24 423/0RGG
>>844
ありがとうございます 無事できました。
<html>
<head>
<script type="text/javascript"><!--
function myCheck(){
myCnt=0;
for (i=0; i<document.form.length-1; i++){
if (document.form.elements[i].checked == true){
myCnt++;}
}
if (myCnt == 0) tab1 = "tab1";
else if (myCnt == 1) tab2 = "tab2";
else if (myCnt == 2) tab3 = "tab3";
document.getElementsByName("tab1")[tab1].onclick();
document.getElementsByName("tab2")[tab2].onclick();
document.getElementsByName("tab3")[tab3].onclick();
}
// --></script>
</head>
<body>
<form name="form">
<input id="b1" type="checkbox"><input id="b2" type="checkbox"><input id="b3" type="checkbox">
<input type="button" onclick="myCheck()" value="実行">
</form>
<INPUT TYPE="button" value="青ボタン" name="tab1" onclick="document.bgColor='lightblue'">
<INPUT TYPE="button" value="赤ボタン" name="tab2" onclick="document.bgColor='#ff8080'">
<INPUT TYPE="button" value="黒ボタン" name="tab3" onclick="document.bgColor='#000000'">
</body>
</html>

848:Name_Not_Found
07/04/27 16:05:49
上の見て思った。ちょっと確認なんだけどさ、
// --></script>
これって、なんかヤバくない?

849:Name_Not_Found
07/04/27 16:14:43
やばいねぇ

850:Name_Not_Found
07/04/27 16:15:55
>>848
遠い昔はやばかったが、今時それでやばいブラウザなんて知らないな。知っていたら挙げてくれ。
まあ、ふつうは染み付いた癖で改行を入れるだろうけれど、どうでもいい。

むしろE4X以降はコメントアウトやCDATAセクションをそのままXMLとして解釈するから、その方がやばいかもな。
もうこれからは問答無用でsrcでFAだろうな。コメントアウトのために余計な神経を使うのは馬鹿らしい。

851:Name_Not_Found
07/04/27 21:55:45
しかし>>842の国語力のなさに驚愕した。

852:Name_Not_Found
07/04/28 11:27:48 fDusG16N
ヘッダーに
<script langage="JavaScript" src="time.js"></script>

時計を表示したいところに
<script langage="JavaScript">tokei();</script>

JavaScript書くときもっと簡単になんないっすか?orz

853:Name_Not_Found
07/04/28 11:41:40
time.jsでtokei()すれば表示したいところにscriptおくだけでいいじゃないか。

854:Name_Not_Found
07/04/28 11:42:01
それが簡単なライブラリの使い方だと思うけど

855:Name_Not_Found
07/04/28 11:56:41
どこらへんが複雑なのかと

856:Name_Not_Found
07/04/28 12:14:18 k8zZNNTj
超初心者です、もしかしたら馬鹿らしい質問かもしれませんが、ご回答願います。
ブログのカスタマイズですがJavascriptについてなのでこちらで質問しました。

Google Analyticsを使用しているのですが、
Google Analyticsの使い方の説明に
「コード セグメントをコピーし、解析対象とする全ページの </body> タグの直前に貼り付けます。」
とあります。
なのでbodyの閉じタグの直前に貼り付けて使用しています。

今回、ブログメニューのツリー化を実行したく調べたところ下記の記事に行き着きました
URLリンク(shinobibloglab.blog.shinobi.jp)
すると「</body>のすぐ上に貼り付けてテンプレートを保存します。」
とあったのですが、どうすればいいですか?

857:Name_Not_Found
07/04/28 13:00:23
両方を順番に貼る。だいたいは干渉しないからそれで動くのでは。
万一干渉する場合は順番を逆にしてみる。それでだめなら両方一緒
に使うのをあきらめる。

858:Name_Not_Found
07/04/28 13:02:36
>>857
ありがとうございました。
チャレンジしてみます!

859:Name_Not_Found
07/04/28 13:04:54
してから書け

860:Name_Not_Found
07/04/28 13:06:07
>>859
なにをしていいかわからなかったのでしてからかけませんでした
申し訳ありません。

861:Name_Not_Found
07/04/28 16:09:23
実行できました。ありがとうございました>>857

862:Name_Not_Found
07/04/28 16:26:41
これでGW序の口かよ... コエーな。。。

863:Name_Not_Found
07/04/28 16:38:06
せかせかするんなら来るなYO
荒れるんだYO

864:Name_Not_Found
07/04/28 20:28:01
このサンプルを参考にして、ドラッグドロップをしたいのですが、
URLリンク(www.dotup.org)

指定をタグではなくIDにしたいので、
getElementsByTagNameをgetElementsByIdにしたのですが、動いてくれなくなりました。
他に何か設定しなおさないといけないところがあるのでしょうか?

865:Name_Not_Found
07/04/28 21:41:36
>>864
getElementById

866:Name_Not_Found
07/04/28 22:34:10
var PointX = obj.style.left + 2;
と計算したいのですが、
obj.style.leftが50pxのときに「50px2」と、文字列として合体してします。
数値として計算したいのですがどうすれば良いのでしょうか?

867:Name_Not_Found
07/04/28 22:34:53
idじゃなくてnameにしてByNameで拾えばもしかしたら動くかもね

868:Name_Not_Found
07/04/28 23:22:28
>>866
マジレスすると、

var PointX = 50 + 2;

styleはどういう形で設定されてるかなんてわからないから…


まぁきっとobj.offsetLeftとかを使えばいいんじゃねぇのってことなんだろうけど

869:Name_Not_Found
07/04/28 23:50:45
>>866
マジレスすると、

var PointX = parseInt(obj.style.left) + 2;

まぁstyle属性がセットされてないとNaNを返したりするから注意

870:Name_Not_Found
07/04/29 00:23:39
zIndex指定するのってこんなに重くなるのか!?

871:Name_Not_Found
07/04/29 00:32:06
いや、このくらい軽いよ

872:Name_Not_Found
07/04/29 01:14:45
>>869 足りない脳みそでもちょっとは使え

obj.style.left = "10em";

873:Name_Not_Found
07/04/29 14:09:59
>>872
サーセン

>obj.style.left = "10em";
さすがにこれは思いつきませんでした


874:Name_Not_Found
07/04/29 16:00:50
>>873 思いつかなくても、質問中に思いっきり書いてあるだろ。これで「さすがに」はない。


875:Name_Not_Found
07/04/29 16:31:58 8eiOYACX
質問です!
LightboxやLITEBOX、Highslideのどれでもなく、Macのようなヒュット拡大され、
Highslideのように自由にマウスでドラッグできるサイトを見かけたと
言ってるんですが、具体的にそういうサイトをご存じないでしょうか?

もしくは、何かしらの情報をお持ちの方、良かったら教えてください。

876:Name_Not_Found
07/04/29 19:40:14
>>866
まじめにやるなら、offsetLeft, getBoxObjectFor, getBoundingClientRectか
parseInt, currentStyle, getComputedStyle あたりも考慮に。

877:Name_Not_Found
07/04/29 20:09:32 5n2KVq6K
<input type="checkbox" name="flag" value="1" onclick="test(this)">テスト

input が沢山ある時、onclickでthisを渡し、それのキー番号?を知る方法はありますでしょうか?
document.getElementsByTagName("input")[ input_num ] のinput_numをthisから得たいです。
御教示宜しくお願い致します。

878:Name_Not_Found
07/04/29 20:18:53
>>874

>var PointX = obj.style.left + 2;
>と計算したいのですが、
>obj.style.leftが50pxのときに「50px2」と、文字列として合体してします。
>数値として計算したいのですがどうすれば良いのでしょうか?

さて、どこに書いてあるのだろうか……
エスパー様にはとても頭が上がりません

879:Name_Not_Found
07/04/29 20:45:17
>>878
頭が上がらないなら、ずっと下げとけよ

880:Name_Not_Found
07/04/29 21:30:51
>>875
Googleが作ってた検索インターフェイスであったな。そういうの。

>>878
ワロスwww アタマワルスキ...

881:Name_Not_Found
07/04/29 21:35:50
どう見ても相手は子供だろ。オトナ気ないツッコミはしてやんな。かわいそうだ。

882:255
07/04/29 22:23:38 g6Hd/FgH
質問です
ある要素の子要素をドラッグすると要素が動くというものを作ってみたのですが、
( 普通のドラッグ処理です )
スクロールバー側にドラッグしていきブラウザの外にマウスを動かすと
要素の移動に応じて勝手にスクロールバーがスライドしてしまいます
どうしたらスライドしなくなるのか教えてください
よろしければ何故スライドしたのかも教えてください
補足が必要であれば言ってください
以下はコードです
//
data = { window : null, obj : null, move : false };
move = function( e ){ // document.onmousemove = move
  if ( !data.obj || !data.move ) return;
  e = e || window.event;
  data.obj.x = ( e.pageX || e.x ) - data.obj.offsetX;
  data.obj.y = ( e.pageY || e.y ) - data.obj.offsetY;
  data.window.left = data.obj.x + 'px';
  data.window.top = data.obj.y + 'px';
};
down = function( e ){ // obj.onmousedown = down
  e = e || window.event;
  var w = e.target || e.srcElement;
  data.move = true;
  data.obj = { offsetX : (( e.pageX || e.x ) - w.offsetX), offsetY : (( e.pageY || e.y ) - w.offsetY) };
  data.window = w.parentNode.style;
};
up = function(){ data.move = false; }; // obj.onmouseup = up

883:882
07/04/29 22:26:50
名前欄255はミスなので気にしないでください

884:Name_Not_Found
07/04/29 23:42:31
>>882
ブラウザのスクロール機能がそう作られている(たとえば長い範囲を
ドラグで塗ることができるようにするため?)、という他ないのでは。
これを止めるにはスクロールバーを消すしかないような気がするが…

885:882
07/04/30 00:41:47
少し例になるかわかりませんが挙げておきたいと思います。

・ドラッグ時スクロールバーがスライドする
URLリンク(www.openspc2.org)
・ドラッグ時スクロールバーがスライドしない
URLリンク(www.openspc2.org)
URLリンク(www.openspc2.org)

参照「ドラッグ処理を行う」
URLリンク(www.openspc2.org)
コードを見比べても改良箇所以外変わってないのでスライドするしないの条件がわかりません

886:Name_Not_Found
07/04/30 00:49:54
そんなサイト参考にしてるからだろ

887:Name_Not_Found
07/04/30 02:29:01
まあ、ドラッグという操作をあらためて見てみれば、むしろ面倒な操作だけどな。
目的地が一つなら、(ダブル)クリックで勝手に移動してくれた方が楽だし、
目的地が複数なら、クリックで選択して目的地の一つをクリックすればドピュっと移動してくれれば、その方が簡単だろう。
いずれの場合でも、必要と思うなら、移動の様子をアニメーションとして見せても構わない。

888:Name_Not_Found
07/04/30 06:44:26
                               ____
                              /     \   ∧__T _ ,,,r -r-T‐-、
                              /        \─   。r *o:*::f:::r:::..l
                    __,-,,-、  ___'/  /\   /\\::::::::*o;;;ro ot_f_ヽ丿
                   __/| | l |ヾ-"~ |       (_人)    | -v--v-'''''''"V"~~┴
               l⌒ 二 -l ..uUU""l-- \           /
              └   l´  (,,,, ./., - イ          /
      .ト            |  {  |,.ィ'''フ''''=、r'"~      i,, `ヽr''"`ヽ、 ヽ、
   ヽ、i / .∠         /  /  .| ノ"    )=、 ̄ ̄,,..ィ'"´i       ヽ、
    / y'_/          /  / /  |     ノ  ´ ̄ `Y"´            i
 .ゝ-+-::i⌒ヽ        /  ''   ,.|   .__,,..         レ      _,,,,、       j、、
  .__/::| |  i >>888   /     r´ } ィ'''i"        J   ,,.ィ'"~  `'ヲ''ー-、ノ、 ヽ、
   / /:| |  i       ,,ノ     / ,,l  ,人        ,,l、        ノt   ) `ヽヽ
    i ::| |  )     .| /,    ,;'  .人 /"``ゝ、       人       ,,イ  jt、  ヽ   i
    /i ::し//      |''´  、 ` _ノ /、   `ー--;::-ニ"_,ゝ=---‐''"   ,ノ ヽ、 ヽ  t、
     ::| ((      ヾ、ノ,    .__ノ´ ヽ、 r  、 f"   `i´ ̄` Y  `ヽ /  ゝ-,ヲ'''   )

889:877
07/04/30 10:05:44 zPYOOue3
>>877をどなたか宜しくお願いします。

890:Name_Not_Found
07/04/30 10:25:33 4lpCFbIT
>>877
>input_numをthisから得たい
"input_num" の意味を考えてみましょう.
"n番 field" の意味しかありません.
this から "n番" を得て それから どうするのって話です.

891:Name_Not_Found
07/04/30 10:32:59 4lpCFbIT
訂正:
"n番 field" -> "n番 input element"

892:Name_Not_Found
07/04/30 10:36:13
>>877
キー番号って何よ。valueのことか? それともtrue/flase?

893:Name_Not_Found
07/04/30 10:49:10
>>877
var myForm = document.getElementById("tekitou");
var flags = myForm.getElementsByTagName("input");
for(var i=0, l=flags.length; i<l; i++) {
if(flags[i].type == "checkbox") {
flags[i].onclick = function() {alert(this.value);}
}
}

とかじゃだめかな。本当はformのidで絞り込んだほうがいいけどまあ
クリックしたらthis.value(1とか2とか)が表示される。
このthis.valueをalertでなく別なfunctionに渡す

894:Name_Not_Found
07/04/30 10:50:34
うお、半角スペースが消去されて見づらい……
>>893の補足。myFormはターゲットにしたいform要素のid取得ね

895:Name_Not_Found
07/04/30 11:15:48 zPYOOue3
>>890
自分の要素num?が得れれば各フォーム毎にidつけないで操作したり便利かなと

nextSibling parentNode lastChild などで現在は対応してるけど、
あると楽になる場面あると思うんだけどなあ

896:Name_Not_Found
07/04/30 11:56:56 4lpCFbIT
>>895
一々 HTML 中に id を振らなくても script から後付けできるし,
id 以外の attribute を付け加えても良い事を肝に銘じるべき.

form で重要なのは "name:value " と言った形のデータであって,
"input element の何番目" と言う情報は対象 element を間接的に指定する手段に過ぎない.
一方, この場合の "this" は element そのものを指しているので.
this.id, this.vale, ... とすることによって好きな物をとり出せる.

つまり, onload で あらかじめ加工しておけば
this.~ とすることによって操作ができる.
問題解決のためには別の方向から攻める柔軟な頭が大切だ.

897:Name_Not_Found
07/04/30 13:09:25 zPYOOue3
>>896
すんません、遅くなりましたがアドバイスありがとうございます。
this.id, this.vale 等は理解してます。

Ajax関連(主にscript.aculo.us)を利用した時、要素にid付加が面倒だったのがキッカケで、
URLリンク(jsgt.org) ←など参考にしながら色々とスクリプト編集しなおしてるのですが、
parentNode等だと直感的な操作ではなかったので(連続しまくると可読性が悪い)
"次の<TD>"、"次の<A>" って方法があればと思いました。 ありが㌧

まあid付加がデザイン依存しないしベスト なんですよね。

898:Name_Not_Found
07/04/30 14:44:15
>>897
兄弟レベルにあるのなら次ので十分なんじゃないの?
var x = this.nextSibling;
while(x != null && x.nodeName != 'TD') x = x.nextSibling;
読みにくければこれを関数にして「nextName(this, 'TD')」
みたいに呼ぶとか。

899:Name_Not_Found
07/04/30 15:01:00 zPYOOue3
>>898
汎用性とか色々考えての質問なんだが。
3つ下の<TR>とか、2つ前の<A>とかね

900:Name_Not_Found
07/04/30 15:30:22
そんなすばらしいものはないからあきらめろ。
XPathだのTreeWalkerだの使えばすっきりいくかもしれんが。

901:Name_Not_Found
07/04/30 17:30:21
>>899-900
洩れもそういう複雑なことを言うのなら自分で新たに発明
するよりもXPathとかだと思うけど。自分でHTMLを書くんだから
自分で制約を設けてコードも簡潔に済むようにするんでも、
任意の構造のHTMLを書いてコードも頑張るのでも、好きに
したらいいのでは。

902:Name_Not_Found
07/04/30 19:51:09
>>896
> 一々 HTML 中に id を振らなくても script から後付けできるし,
> id 以外の attribute を付け加えても良い事を肝に銘じるべき.

それが出来るなら目印(idなど)は必要ないだろ。

903:Name_Not_Found
07/04/30 20:04:24
>>899
要するに、MSXMLのnextNode()みたいなことをやりたいが、
IEでHTMLを扱う時にはそれらしい簡単な方法がないから困る、っつうことだな。
再帰とかDOM標準で遊んでもいいが、実用的に実行速度重視で書けば、次のようになる。
今つらつらと書き込んだだけでテストしてないので動くかどうか知らんがな。

/*@cc_on @if (1)
function nextTo (context, root, filter) {
  var i;
  var all_length;
  var current;
  var all = root.all;
  i = context.sourceIndex - root.sourceIndex;
  all_length = all.length;
  while (i < all_length)
    if (filter(current = all.item(i++)))
      return current;
  return null;
}
function isTD(n) {return /^TD$/i.test(n.nodeName);}
function nextTD(context, root) {return nextTo(context, root, isTD);}
@end@*/

904:Name_Not_Found
07/04/30 20:25:07
>>899
あと、TRやTDのような、(?:inner|outer)HTMLの値が終了タグ省略の形で得られる物だから無理なんだが、
逆に、整形式が保証される場合には、XMLDocumentにloadXML()しちゃえば、nextNode()とか使い放題だ。
まあ、そういう神経を使うような分岐はやらない方が賢明だから、>>903みたいな関数を作って対応するがな。

他のブラウザ(というかFx)の場合は、こういういわゆる二重マークアップを扱う時には、
レスで挙がっているように、TreeWalkerを上手に使えば総じて速い。
しかし、XPathの方が包括的だし、XPathの方が流行っていて情報も多いだろうから、XPathを使うに限るだろうな。

あと、TreeWalkerはフィルターアウトされたノードの扱いにおいて、仕様と実装が異なるから、敬遠した方が良かろう。
ついでに、NodeFilterとメソッドacceptNode()のthisの扱いも特殊なので、知らなければ悩むことになりかねない。
だから、XPath使え、になるだろう。今のサイ本からはTreeWalkerは消滅したしw

905:Name_Not_Found
07/04/30 20:39:34 4lpCFbIT
>>902
>それが出来るなら目印(idなど)は必要ないだろ
どういう意味 ?
("それ" ができないと言いたいようにも読み取れるし,
"idなど は必要ない" との主張に重きがあるようにも読める)
仮に後半部だと仮定して答えると...

menu などのボタンを自動作成する script を書いたとする.
ボタンを押した時に呼び出す function に受け渡す parameter としては色々考えられる.
その中の候補として id が便利なことがある.
と, こんな所でどうかな ?

906:Name_Not_Found
07/04/30 20:43:22
次スレのテンプレ論議とかあれば今どうぞ。

907:Name_Not_Found
07/04/30 21:04:26
テンプレのネスケのリファレンスとガイドを格上げしよう(単独で>>1に)。基本的な事は、これ読めば書いてある。
まず、これ読めって回答が結構多い。

908:Name_Not_Found
07/04/30 22:49:22
>>907
なるほどー。反対意見はないですか?

909:Name_Not_Found
07/05/01 00:08:23 cnrEVKci
変数のサイズって制限ありますか?
読み込んだテキストを配列にいれておいて、任意で表示するってありきたりな処理ですが、
トータル100kb、200kb入れても問題ないでしょうか?

910:Name_Not_Found
07/05/01 00:25:08
>>909
数百kbなら何でもないでしょ。ふつーの画像1個のサイズと変わらんし。

911:Name_Not_Found
07/05/01 01:32:14
forでベンチしようぜ?

912:Name_Not_Found
07/05/01 04:15:57
>>908
反対はせんが載せるならきちんと管理が続いてるMDCのほうを載せてくれ。
Referenceの日本語訳も結構進んできたし。
あと、E4XとGecko DOM ReferenceのURLも古いままだから直してくれ。

JavaScript 1.5 ガイド / リファレンス (Netscape/Mozilla)
URLリンク(developer.mozilla.org) (和訳)
URLリンク(developer.mozilla.org)
URLリンク(developer.mozilla.org) (和訳)

E4X (ECMAScript for XML)
URLリンク(www.ecma-international.org)
URLリンク(www.ne.jp) (和訳)

Mozilla Gecko DOM Reference, Netscape devedge
URLリンク(developer.mozilla.org)
URLリンク(developer.mozilla.org) (和訳)
URLリンク(devedge-temp.mozilla.org)

913:Name_Not_Found
07/05/01 20:26:50 QWGDxlnj
質問です

914:Name_Not_Found
07/05/01 20:46:38
答えです

915:Name_Not_Found
07/05/01 21:17:49
報告です

916:Name_Not_Found
07/05/01 22:12:36
連絡です

917:Name_Not_Found
07/05/01 22:30:19
ゴルァ そこのおまえら資源をムダにしてるんじゃねえ!



918:Name_Not_Found
07/05/01 23:41:14
なんだコノヤロー!!

919:Name_Not_Found
07/05/01 23:46:36
何がコラか!タココラ!

920:Name_Not_Found
07/05/02 00:01:01
次の質問ドゾー。連休だからなあトホホ…

921:Name_Not_Found
07/05/02 00:10:55
>>920
javascriptって何ですか?

922:Name_Not_Found
07/05/02 00:35:28
>>921
今は亡きネットスケープ社が開発したブラウザ上で動くスクリプト言語です。
オブジェクト指向のような言語体系と、当時サンが作ったJavaにそっくりな
名前が特徴です。

923:Name_Not_Found
07/05/02 00:47:43
>>922
では、JavaScriptはサンのJavaと同じような言語だと考えてよいのですか?

924:Name_Not_Found
07/05/02 03:31:46
>>923
似て非なるものだと考えてください。

925:Name_Not_Found
07/05/02 07:14:21
お食事券と汚職事件みたいなもんか。

926:Name_Not_Found
07/05/02 08:26:54
最近prototypeとかDojoとか
MochiKitとかjQueryとか流行ってますが
おすすめはどれですか?

927:Name_Not_Found
07/05/02 08:31:45
適材適所ですが、Dojoがいいかな

928:Name_Not_Found
07/05/02 08:34:38
「JavaScript ライブラリ 比較」でぐぐる。

929:Name_Not_Found
07/05/02 10:31:53 qCpvRgaz
質問です。
JavaScriptではrubyのように、
['a','b','c'].each(function(i) {
F(i);
}
);
みたいに書くことはできますか?IEでできる方法ありましたら
ご教示お願いします。

930:Name_Not_Found
07/05/02 12:22:51
>>929
Array.prototypeに自分で追加しちゃってもいいのなら
(状況によってはライブラリや既存コードとの干渉があり危険)。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
Array.prototype.each = function(f) {
for(var i = 0; i < this.length; ++i) f(this[i]);
}
</script>
</head></body>
<p><script type="text/javascript">
['a','b','c'].each(function(i) { document.write(i + '<br>'); });
</script></p>
</body></html>

931:Name_Not_Found
07/05/02 12:32:07
Arrayのprototype拡張するとかありえない

932:929
07/05/02 12:50:06 gIB6sOw+
>>930さん ありがとうございました。
危険ですね。for-inが悪夢を呼びそうです。
>>931さん
ありえない、とは?>>930さんのでもありえなくはない
と思うのですが。向学のためにお聞かせください。

933:Name_Not_Found
07/05/02 12:53:53
for-in関連の事じゃね

934:Name_Not_Found
07/05/02 13:00:48
Arrayだけは駄目だな。
他のはある程度許されると思うけど。

935:Name_Not_Found
07/05/02 13:01:23
あ、ごめん、Objectは論外ねw

936:Name_Not_Found
07/05/02 13:30:46
そういう言語なんだから自由に拡張すればいいだろ。

937:Name_Not_Found
07/05/02 13:36:50
まあこのように、議論百出くらい危険というか(w
ところで私ことスレ立て人してるのですが、連休で明日から
6日まで出かける間に満杯になると思われるので、どなたか
適当に次スレ立ててくださいませ…

938:Name_Not_Found
07/05/02 13:44:02
>>937
全然危険じゃないというか、危険を煽る必要が全くない。
仮にバグっても、初心者1週間でもない限り、誰でも一瞬で気付いて修正できる。

939:Name_Not_Found
07/05/02 14:59:39
いやそういう意味じゃなく単に賛否両論あるねという意味
なんだがそう読めないかな。賛成派がいることは否定しないよ。

940:Name_Not_Found
07/05/02 16:18:26
>>937
乙。一路平安!帰国の際はご一報を。マカデミアナッツageよろ。

941:Name_Not_Found
07/05/02 16:28:56
常時粘着してないと毎度々々スレ立てなんてできないよな…

942:Name_Not_Found
07/05/02 22:54:03
前スレであったけど、言語の基本的な性能を失わせるから駄目なんじゃなかったっけ。
危険を煽るとかそういうレベルではなく駄目だろ。

943:Name_Not_Found
07/05/03 02:45:23
俺は組み込みオブジェクトも拡張できるのが
JavaScriptの基本的な性能のひとつだと思ってるがな。
ObjectはさすがにないがArrayならメリットのほうが大きいだろ。
大体配列をfor-in文で回したら列挙の順番が保証されないし、
疎な配列なんて普段使わんから配列に関するfor-in文の有効性を感じない。
まあこれは全部自作スクリプトで構成するのが前提なんで、
外部ライブラリとか使うならデメリットのほうが上回るかもしれんが。

944:Name_Not_Found
07/05/03 09:41:19
mozillaの__defineGetter__ , __defineSetter__ に相当する動作をIE6で実現したいのですが何か良い方法はありませんか。
URLリンク(developer.mozilla.org)



945:Name_Not_Found
07/05/03 10:39:43
>>929
自分で拡張するのも悪くないと思うが、prototype.js を使うのがデファクトスタンダードかと。
Rubyちっくなクロージャも簡単に使えるようになる。

946:Name_Not_Found
07/05/03 10:42:46
疎な配列は、使うと便利だけどな。慣れてない人が多いだろうけど。
俺は組み込みオブジェクトのprototype拡張って、グローバル関数を作るのと同じくらい嫌だな。
適当なクラスを作るほうがいいなぁ。好みの問題だけどね。

947:Name_Not_Found
07/05/03 11:31:56
>>946
> グローバル関数を作るのと同じくらい嫌だな。

グローバル関数を作るのがかなり嫌な感じに読み取れたんだけど、
グローバル関数ってそんなに作らない方が良いものなの?
適当に作る時はクラスとか用意せずグローバル関数で作っちゃうんだけど。

948:Name_Not_Found
07/05/03 12:34:37
>>944
求めている物とは全然違うだろうが、
URLリンク(msdn2.microsoft.com)
にGET属性やPUT属性がある。

949:Name_Not_Found
07/05/03 12:46:19
>>947
適当なときは何をやってもいいと思うけど、
納品するソースコードの構造にはかなり気を遣う気がする。
基本的にはグローバル変数は1個か2個で、
あとはスコープで必要ないところから見えないようにパッケージしてる。

950:Name_Not_Found
07/05/03 13:12:54
>>945
>Rubyちっくなクロージャも簡単に使えるようになる。
現在はともかく、初期においてはどう見てもJS初心者だった作者が
勢いで好きなRuby風に書いたのだろうから、Rubyチックなのは当たり前だろう。
しかし、クロージャに関しては、Rubyチックなクロージャにできるわけがない。
そもそもRubyのクロージャは個性的だろ。少なくともJSのそれ(関数でクロージャ)とは違う。
まあ、メソッドの名前などが同じということと混同しているだけだろうが、少しでも正しい向きに認識した方がいい。

951:945
07/05/03 16:33:04
そのとおり、Rubyちっくなのはクロージャを利用するEnumerableなメソッドな。
eachはもとより、detectとかfindall、そしてinjectとか。
JSのクロージャじゃなくて、Prototype.jsで実装しているクロージャのこと。
関数でクロージャというのは、Rubyでも基本的には同様だ。

>しかし、クロージャに関しては、Rubyチックなクロージャにできるわけがない。
というのはコードブロックのスコープのことでも指してるのか?


952:Name_Not_Found
07/05/04 11:30:47
>関数でクロージャというのは、Rubyでも基本的には同様だ。
スレ違いなんだが、それどこの脳内Ruby?w

953:Name_Not_Found
07/05/04 21:04:50
正確には関数じゃなくてメソッドな。Rubyなんだから

954:Name_Not_Found
07/05/04 22:31:30
JavaScript質問スレ
スレリンク(hp板)

955:Name_Not_Found
07/05/05 00:31:18 Etv08Alo
質問なんですが、jsファイルからjsファイルをインクルードすることは不可能なんでしょうか?

956:Name_Not_Found
07/05/05 01:56:02
ねだるな、ググれ、さすれば与えられん

957:Name_Not_Found
07/05/05 03:57:18
つJSONP

958:Name_Not_Found
07/05/05 06:22:05
実際はJSONPを使わないけどな

959:Name_Not_Found
07/05/05 23:46:49
さすったら赤くなってきたよ

960:Name_Not_Found
07/05/06 00:22:03
function hoo(id_num) {

id_num.innerText = "Changed!";

}
これがうまいこと行かない。。
id_numが展開されてないみたいなんだけど、どうすればよろし?



961:Name_Not_Found
07/05/06 00:33:32
>>960
どう上手くいかないかってエラーと、
hooの呼び出し方をどうしてるかを書いた方がよろし

962:960
07/05/06 01:00:30
スマソ

function hoo(id_num) {
id_num.innerText = "Changed!";
}

呼び出し側
<input type="checkbox" name="1" value="chk" onClick="hoo(id_1);"<span id="id_1">データ取得する</span>

チェックボックスの横にある文字をチェックで動的に変更したいんだけど

hoo側のid_numが展開されずにid_1.innerTextとならない。
何かいい方法ない?



963:Name_Not_Found
07/05/06 01:07:38
inputを閉じてないのは何故なんだぜ?

964:Name_Not_Found
07/05/06 02:53:37
>>962
spanの前でinputを閉じてると仮定して、やりたいことはIEで上手く行ってる気がするけど?
Firefoxで駄目って言うならinnerTextをinnerHTMLに変えたらいいのかな

ただ、document.getElementById()使ってない時点で気持ち悪いから
FirefoxにFirebug入れてバグ取りした方がいいと思うよ

965:Name_Not_Found
07/05/06 03:29:59
Firebugって作者の独りよがりなtoString()の結果を吐く使えない拡張のことだよね。
面白いけど、あんなもの使えませんよ。
喜んでるのはPrototype.jsで入門したような初心者ばっかりじゃん。

966:Name_Not_Found
07/05/06 03:38:22
苦労人乙。

967:Name_Not_Found
07/05/06 04:02:11
いまだにprototype.jsとか使ったことないんだけど、最近とても負け組な気がしてます。

968:Name_Not_Found
07/05/06 04:42:57
>>965
>>962の状態から薦めるとしたらFirebugが一番いいかなと思ったのだけど。
あぁ。Firefoxは普通にjsコンソールでわかるのか。
Firebug入ってるのがデフォだから入れないと見れないかと勘違いした。

969:Name_Not_Found
07/05/06 09:19:42
prototype.jsは要らん。中見ると分かるが、あのライブラリを作った人間は
JavaScriptを他言語の視点で見ている。すでにbuggieなところも指摘されて
いる。要するに自作関数ひとつロクに書けない奴がありがたがっているだ
けのもの。

970:Name_Not_Found
07/05/06 13:42:28
それをここに書き込んでも、空ろに響くだけ。

971:Name_Not_Found
07/05/06 14:27:39 aETLRuxv
質問です。
var a = 1;
f(a);
function f(b){ alert( b ); }
で、f(a)を実行する時点でどうしてオブジェクト未定義の
エラーにならないのでしょうか。そのときはまだ関数が読
み込まれていないのでエラーが出ると思うのですが。

972:Name_Not_Found
07/05/06 14:53:32
関数は先に認識されてから実行される

973:971
07/05/06 16:08:50 aETLRuxv
>>972さん
そういうことなんですね。ありがとうございます。

974:Name_Not_Found
07/05/06 21:06:29
ところでjqueryってどこからダウンロードしたらいいんですか?

975:Name_Not_Found
07/05/06 21:11:14
休みはもうすぐ終わりだな

976:Name_Not_Found
07/05/06 21:28:53
月曜日だな

977:Name_Not_Found
07/05/06 21:48:41 J0s6cMJQ
URLリンク(blog.livedoor.jp)
>記法中のjavascriptを、(function(){/* ... */})()でくるむことで、変数衝突を回避
とあるのですが、()()と囲んでいるのはなんでしょうか?

978:Name_Not_Found
07/05/06 22:14:19
script.js
----
function hage(){
alert('go bold!');
}
----

index.html
----
<script src="script.js"></script>
<button onclick="hage();">hage</button>
----

上のソースで、script.jsの読み込みが完了していないときにボタンを押すとエラーになりますが、何かウマい解決方法はないでしょうか。

979:Name_Not_Found
07/05/06 22:17:23
>>977
function f(){
alert();
}
var a=f;
a(); ←「 () 」

/*-------------*/

var a=function(){
alert();
}
a(); ←「 () 」

/*-------------*/

(function(){
alert();
})(); ←「 () 」

980:Name_Not_Found
07/05/06 22:59:38
944です。

>>948
今回必要としている物とは違うようですが参考になりました。
機会があったら使用してみたいと思います。ありがとうございました。

質問した件はIE固有の話のため、少し強引ですがVBScriptとの連携で対応しようと考えています。
具体的にはVBScript側でProperty Let と Property Getを含めたClassの定義及び
インスタンス化までを行い、そのインスタンス変数をJavaScriptから使用します。

それでも生成済みオブジェクトに対して
動的にプロパティを追加することは出来ないですが、
例えば、Classの構造を記した文字列にプロパティ記述を追加し
execScriptすることで対応できないかと考えています。

スレ違いになりそうなのでこの辺で。

981:Name_Not_Found
07/05/06 23:01:02
>>978
script.js内にダブらないグローバル変数を定義しておいて、変数が見つかるまでsetTimeoutで一定時間ごとにループしつつ判定し、見つかったらbuttonにonclickイベントを割り当ててからループをやめる

・・・のは無駄なのでscript.jsの最後にbuttonにonclickイベントを割り当てる処理を書く。

982:Name_Not_Found
07/05/06 23:54:00
>>978
onclick="if (typeof hage == 'function') hage();"

しかしclickイベントタイプのようなbubblesプロパティがtrueであるイベントオブジェクトは
documentやwindowのように変更されない(変更されないと楽観視できる)オブジェクトを適切に選んでcurrentTargetにする。
ただしtargetを識別するための情報を事前に確保しておく。例えば<button id="HAGE">のように。

983:Name_Not_Found
07/05/07 06:27:12
window.hage&&hage() しちゃうな。>>982 と変わらんけど。
もしくは<head>内<script>でダミーのhoge()つくっといちゃう。

984:Name_Not_Found
07/05/07 09:00:59
<script language="JavaScript">
<!--
function myFunc(){
myD = new Date();
myYear = myD.getYear();
myYear4 = (myYear < 2000) ? myYear+1900 : myYear;
myMonth = myD.getMonth() + 1;
myMonth2 = (myMonth < 10) ? 0+""+myMonth : myMonth;
myDate = myD.getDate();
myDate2 = (myDate < 10) ? 0+""+myDate : myDate;
myMess = myYear4 + "" + myMonth2 + "" + myDate2;
document.write( myMess );
}
// -->
</script>

これでmyMessは20070507などとなってるわけですが、ここで

<a href=/contents/txt○○○○.html>今日のお話</a>

のようなリンクを作って、○○○○に今日の日付を入れたいのですが
どのようにすればいいのかわかりません
よろしくお願いします


985:Name_Not_Found
07/05/07 10:16:18
>>984
DOM getElementByID setAttributeあたりでぐぐれ


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