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

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

JavaScript覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

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制作板なんだからもうちょっと装飾してよ。


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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