元スレ+ JavaScript の質問用スレッド vol.84 +
JavaScript覧 / PC版 /みんなの評価 :
1 = :
━━━本スレに書く事を許される者は以下の通り━━━━━
一、正しい(validな)HTMLとは何か知っており書ける者
一、JavaScriptはJavaとは別物であると知っている者
一、自ら学んでJavaScriptコードを書く意思を持つ者
一、ユーザに迷惑となるスクリプトを書かない者
一、質問を分かる日本語できちんと説明できる者
一、トラブルを再現する最小限のサンプルを貼れる者
一、テンプレ+FAQ>>2-10/過去ログ/関連資料を読める者
━━━━━━━━━━━━━━━━━━━━━━━━━━━
自力で書く気がない人は他のスレへ(テンプレ末尾参照)。
前スレhttp://hibari.2ch.net/test/read.cgi/hp/1295265321/
[必読]過去スレ全集http://www2.atpages.jp/mirror/2ch/javascript/
(閲覧のみ)http://usamimi.info/~mirrorhenkan/2ch/javascript/
(閲覧のみ)http://wing2.jp/~mirrorhenkan/2ch/javascript/
[必読]ガイドhttp://developer.mozilla.org/Ja/JavaScript
(GuideをReferenceに→Netscape版言語仕様。多くの実装が準拠:ECMA-262.ed3)
FAQ・注意・過去ログ・仕様書・関連資料・関連スレ>>1-7
2 = :
【質問を書く上で】
1)「何を、いつ、誰が、どこに、なぜ、どのように」動作させたいのかを
簡潔に説明してください。ただ「動きません」ではわかりません。
脳内おれおれ用語は混乱のもと。一般的な用語を使うようにしてください。
2)調べたこと・試したことを書いてください。
OS、ブラウザ、バージョンを必ず明記しましょう。
質問箇所(行数、エラー内容)を簡潔に。
何のエラーかわからなければ、エラーメッセージをコピペ。
各ブラウザのJSコンソールを活用しよう。
3)うまく説明できない時は、ソースを貼ると回答されやすいです。
要点を整理して、エラーが再現するソースを貼ってください。
1レスで収まらない場合は、アップロードしてください。
http://jsbin.com/ やhttp://jsdo.it/ なども活用してください。
4)閲覧者の迷惑になる質問は回答されません。
別窓を多数開く、閉じる・戻る・クリックを妨害、画面占有、など。
「分かんねえの?」と煽っても無駄です。
5)「初心者なので」「初心者だから」「初心者ですみません」とか
書かない方が無難です。
知らない、できない、わからない、まちがい、は誰にでもありますから。
3 = :
【FAQその1】
Q1. 開いた別窓/フレームの内容にアクセスできないのですが…
A1. ページ内容が別サーバの場合セキュリティ制約により絶対無理です。
Q2. JavaScriptでローカルファイルを読み/書きたいのですが…
A2. Webではセキュリティ制約により絶対無理です。できたら恐ろしいことに…
Q3. 同じタグの中でonclick="foo()"とonclick="bar()"を同時に使いたいのですが…
A3. セミコロンで複数の文を区切れます。onclick="foo();bar();"としましょう。
Q4. document.write(...)でページ内容を追加したいのですが…
A4. 一度ページ表示完了後にwrite()すると内容はクリアされちゃいます。
部分的に内容変更するには(1)他フレーム/iframe/別窓への表示、
(2)textarea等への表示、(3)DOMでノード挿入、(4)innerHTMLのどれかで。
innerHTMLは非標準ですがIE、Opera、Safari、Gecko(N6/N7/Firefox等)で対応済。
Q5. table/tbody/tr要素のinnerHTMLを書き換えるのがうまく行かないのですが…
A5. IEはそれらの要素のinnerHTMLは変更不能。DOMを使って書き換えるか
<div><table>...</table></div>とでもしてdivのinnerHTMLを書き換えましょう。
Q6. DOMでtable要素にtr要素を追加しても表示されないのですが…
A6. DOMでは(XHTML 1.x除く)tbody要素にtr要素を追加する必要があります。
tbody要素はtbodyタグを書いていなくても自動的に作成されます。
またはtable.insertRow()/tbody.insertRow()を使いましょう。
Q7. 変数w1、w2…を順にループで(番号をiに入れて)設定/参照したいのですが…
A7. グローバル変数はwindowのプロパティだからwindow['w'+i]を読み書きすれ。
Q8. フォーム部品名を変数にした「...myform.変数名.value」が動きません…
A8. 「document.forms.myform.elements[変数名].value」でどぞ。
JavaScriptでは一般に「obj.x」と「obj['x']」は同じ意味です。
Q9. Aタグのonclickで動作指定してるのですが時々動きません…
A9. 「onclick="...;return false"」としないとページ移動しちゃうから。
4 = :
【FAQその2】
Q10. CSSで設定した背景色がe.style.backgroundColorで取得できないのですが…
A10. 取得には document.defaultView.getComputedStyle() を使う必要あり。
IEでは要素オブジェクトのプロパティcurrentStyleを使う。
Q11. 100*1.15の結果が114.999…998となってしまうのですが…
A11. コンピュータの実数計算は全て近似値だと思え。誤差が嫌なら整数で計算。
Q12. 任意のデータをサーバ(別鯖ではない)から取り寄せたいのですが…
A12. IE7/Gecko/Opera/Safariのnew XMLHttpRequest()、IEの
new ActiveXObject("Msxml2.XMLHTTP.6.0") (または"Msxml2.XMLHTTP.3.0")
を使えばできます。古いブラウザだと隠しフレームに読むなどのワザが必要。
Q13. setAttribute("class","foo")、setAttribute("onclick","bar()")が動きません…
A13. IEではそれは不可。「obj.className="foo"」「obj.onclick=bar」でどぞ。
複数の関数を呼びたいときは obj.onclick=function(){foo();bar();};
という風に無名関数を作りましょう。中に書かれたコードが実行されます。
Q14. タイマーやイベントハンドラに設定するコードにthisを含めたいのですが
「"...this..."」とか「function(){...this...}」ではうまく行きません。
A14. それらが実行されるときはthisは別のもの(window等)を指してしまってる。
「function(x){return function(){...x...};}(this)」のようにthisを別の変数に
束縛しその変数を使って。循環参照によるメモリリーク問題あり(この項記述検討中)
Q15. 文字列の置き換えをするときにコードを使いたい(Perlのs///e)のですが…
A15. string.replace(/.../,function(str,p1,p2,...,offset,s){...})としましょう。
正規表現にマッチした文字列がreturnで返された文字列に置き換えられます。
各引数はstrがマッチした部分文字列、p1,p2,...が1番目、2番目、…の()の中身、
offsetがマッチした位置、sが置き換え前の文字列全体になります。
5 = :
【FAQその3】
Q16. input type="file"の値を設定(参照)できないのですが…
A16. セキュリティ制約のため設定は絶対に不可。参照はブラウザにより不可。
Q17. getElementById('ID名')や$('ID名')で要素が取れないのですが…
A17. コード実行時点でHTMLがそこまで読まれてない。onload中でやるとか。
【主張の対立:他人の嗜好は尊重。損得の議論は歓迎】
・仕様を読む:回答者なら仕様の該当部分は読んでいるべき。質問者でも
仕様を読まずうだうだ書く奴は注意されて当然。読み間違いは生温く指摘。
・英文文書:翻訳の努力を惜しむべからず。 読めないなら和訳を探し、
なければあきらめよう。翻訳サイトを知っている人はうまく誘導してあげて。
・IE専用/アンチIE/クロスブラウザ:「○○は不要」「○○だけであと
は無視」は不毛。質問者が分かって選択していれば尊重する。無知か
らIE専なのは指摘してあげると親切。
・標準準拠 vs 使えればよい:標準はブラウザが変わっても維持される
可能性大。非標準機能も損得を分かった上で使うならよい。
・MS vs アンチMS:MS固有の情報はMSのサイトで見ないと分からないが、
そこだけ見ているとIE専になる。あとは上2件と同様。
・別窓、イベント抑止など:一般には迷惑スクリプトだが質問者に正当
な理由があることも。尋ねて分かってないようなら煽っても可(w
・innerHTML vs DOM:それぞれに長所/弱点があるので理解した上で選
択するべき。一概にどちらは駄目、とは言えない。
・on属性 vs addXXX():ハンドラが1つだけと分かっていればon属性
で簡単にハンドラを設定もあり。上書きが心配ならaddXXX()。
7 = :
【チュートリアルサイト・サンプルサイト】
規格が読めないならまずはチュートリアル。サンプルサイトも沢山ある。
(以下は精選すべきとの議論あるが進んでいないので玉石混淆)
MetaGraphic Cell
→http://www2u.biglobe.ne.jp/~oz-07ams/prog/
どら猫本舗のリファレンスカウンター
→http://www.doraneko.org/
はぎさんちのページ Mozilla's DOM Sample Project
→http://cgi.din.or.jp/~hagi3/JavaScript/JSTips/Mozilla/mds.cgi
一撃必殺javascript
→http://www.openspc2.org/JavaScript/
【関連スレ】
板違い、スレ違いに注意!サーバ側での処理はWebProg板へどぞ!
Webサイト制作初心者用質問スレ part222
→http://hibari.2ch.net/test/read.cgi/hp/1291304974/
CSS初心者スレッド=9th=
→http://hibari.2ch.net/test/read.cgi/hp/1287470663/
役に立つ書籍は? 4冊目
→http://hibari.2ch.net/test/read.cgi/hp/1172823674/l50
1行javascriptプログラミング
→http://hibari.2ch.net/test/read.cgi/hp/1066750037/l50
WSH(・∀・)スレッド! Part 4
→http://hibari.2ch.net/test/read.cgi/tech/1243095768/l50
【誰か】jQueryのここがわからない【助けて】
→http://hibari.2ch.net/test/read.cgi/tech/1229881548/
8 = :
テンプレここまで
9 = :
いやー相変わらずテンプレ長いなw
10 = :
スレ建ておつかれ様でした、ありがとうございました。
ではさっそく。(1)テンプレ廃止(>>1 のみにする)案に賛成の人、
(2)何らかの整理をして減らす提案のある人、ぜひご意見を。
個人的には >>2 が簡潔になったので、次はFAQ類(>>3-5)を整理
してできれば1レスに減らしたいと感じる。
11 :
>>10
むしろ>>2が最初でいいかもしれんね
こんなこと言うと怒られそうだけど>>1はちょっと説教くさい気が…
12 = :
連投規制に引っ掛かったから少なくとも>>1-5までにまとめてほしい
13 = :
FAQは@wikiでも借りてそこにうつすとかする?
するんだったら自分がwiki借りてきます
14 = :
どうせ誰も読まない
16 = :
ダウンロードできないならコピペすればいいじゃない
17 = :
>>15
いや、JavaScriptファイルはただのテキストファイルだし
コードが表示されてるならそれで十分なわけだが。
20 = :
FAQ とリンクをまとめてみた。
http://jsbin.com/usoca5/2
21 = :
思ったけどFAQをテンプレとして貼るのって無駄だよね
全部網羅するのは不可能だし、たった17個しかないから役に立ってるのか疑問
22 = :
テンプレは >>1-2と>>7の関連スレだけでいい気がする。
リファレンスやFAQは随時更新されるものだから、余所にあっても問題ないし。
23 = :
あとFAQの内容が更新されてないから内容が古すぎる、
IEでは不可とか書いてあるけどIE7以降は可だったり(Q13)するからバージョンも併記しないと勘違いの元
24 = :
>>20
jsbinいいな、編集できるし、コードもアップできるし
と思ったが、テキストがエンティティ化されとる…
25 = :
>>24
すまん。なんとかしたかったんだが、日本語を入力すると化けるんだ。
document.documentElement.outerHTML でコード出力して編集させるとか面倒だよな…。
26 = :
暫定措置として、http://codepad.org/ZmhQ3lpV にエンティティ化前のHTMLソースをUPしておいた。
27 = :
みんなjavascript作るとき、何かソフト使ってる?
自分はメモ帳使ってるんだけど、何かいい補助ソフトあるか探してます
29 = :
>>27
NetBeans
31 = :
色分け、支援があるとイージーミス減るからな
32 = :
eclipseって補完機能ある?
34 = :
>>23
> IEでは不可とか書いてあるけどIE7以降は可だったり(Q13)するからバージョンも併記しないと勘違いの元
間違っていたらすまないが、その修正は IE8 からではなかったかな。
http://fiddle.jshell.net/vSqKr/6/show/#Q13 に参考URLも載せたので、間違っていたら適宜修正して欲しい。
35 = :
関数とかにリンク当てたいけどいじっても大丈夫なのこれ
36 = :
元のは削除されないしいいんじゃない
37 = :
バージョン管理されてるのかありがと
38 = :
http://fiddle.jshell.net/vSqKr/9/show/
目がかすんできたt
39 = :
>>32
プラグイン次第
40 = :
FAQを別サイトに置いたら絶対今よりメンテしなくなると思うけど、
とりあえず2~3スレくらいの間試すのもいいかと思う。個人的には
1レスに圧縮したFAQなら入れておいていいと思うんだけどな。
>>1 をやめて>>2 を >>1 にするというのはどうなんだろう。
今のはJavaと区別つかない人や自分で書く気がない人に
「よそへ行け」というのに便利だけど。
41 = :
>FAQを別サイトに置いたら絶対今よりメンテしなくなると思うけど
これは100%そうなる、断言する。
過去スレ全集をあげてるのもここ1年以上俺一人だけで
しばらく放置してても誰一人あげようとしない。
てことで今から83まであげてきます・・・(´;ω;`)ぶわっ
42 = :
てことで79~83まで補完完了。
誰でもできるから気づいたらアップロードしてね!
43 = :
これは乙じゃなくてポニーテル
44 :
>>41
これは乙じゃなくてモーニングスターの鎖
46 = :
なぜやってみない……
47 = :
環境によるとしかいいようがないが、500程度なら気にしないな
48 = :
項目分メモリ消費量が増えるだけだろ・・・
49 = :
更新するたびにって考えると無駄が大杉
いっそHTMLに書いて、選択すべし
50 = :
FAQ、プレーンテキストみたいで味気ないよー。
Web制作板なんだからもうちょっと装飾してよ。
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.94 + (1001) - [97%] - 2012/1/8 15:46
- + JavaScript の質問用スレッド vol.89 + (1001) - [97%] - 2011/9/4 4:17
- + JavaScript の質問用スレッド vol.88 + (1001) - [97%] - 2011/7/20 7:03
- + JavaScript の質問用スレッド vol.74 + (1001) - [97%] - 2009/12/1 6:08 ○
- + JavaScript の質問用スレッド vol.87 + (1001) - [97%] - 2011/6/21 6:33
- + JavaScript の質問用スレッド vol.86 + (1001) - [97%] - 2011/5/27 21:50
- + JavaScript の質問用スレッド vol.85 + (1001) - [97%] - 2011/4/25 21:32
- + JavaScript の質問用スレッド vol.83 + (1001) - [97%] - 2011/2/24 8:02
- + JavaScript の質問用スレッド vol.82 + (1001) - [97%] - 2011/1/19 7:54
- + JavaScript の質問用スレッド vol.81 + (1001) - [97%] - 2010/12/10 20:01
- + JavaScript の質問用スレッド vol.80 + (1001) - [97%] - 2010/11/9 2:17
- + JavaScript の質問用スレッド vol.141 + (881) - [95%] - 2021/4/19 9:00
- + JavaScript の質問用スレッド vol.134 + (1001) - [95%] - 2018/8/3 23:15
- + JavaScript の質問用スレッド vol.104 + (1001) - [95%] - 2013/1/28 4:00
- + JavaScript の質問用スレッド vol.124 + (1001) - [95%] - 2015/7/16 1:30
- + JavaScript の質問用スレッド vol.142 + (984) - [95%] - 2020/8/27 19:15
- + JavaScript の質問用スレッド vol.114 + (1001) - [95%] - 2014/5/3 10:45
トップメニューへ / →のくす牧場書庫について