元スレ+ JavaScript の質問用スレッド vol.114 +
JavaScript覧 / PC版 /みんなの評価 :
1 = :
JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-4のテンプレを読んだ上で質問してください。
■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
(ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。
回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。
(4) 常に自発的に調べる心構えを持ってください。
具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
※必ず「問題の事象が再現されること」を確認してください。
必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合はhttp://validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。
(9) ライブラリ関連の質問は禁止ではありませんが、ライブラリスレで聞くとより回答を得やすいかもしれません。
(10) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。
3 = :
■前スレ
+ JavaScript の質問用スレッド vol.113 +
http://toro.2ch.net/test/read.cgi/hp/1386098775/
■過去スレ全集
http://www2.atpages.jp/mirror/2ch/javascript/
http://usamimi.info/~mirrorhenkan/2ch/javascript/ (閲覧のみ)
■テンプレ案
http://jsfiddle.net/fH4cC/31/show/
■関連スレ
ECMAScript デス 4
http://toro.2ch.net/test/read.cgi/tech/1325448978/
【jQuery】JavaScript ライブラリ総合質問所 vol.3
http://toro.2ch.net/test/read.cgi/hp/1369444026/
【WHATWG】HTML5 Part6【W3C HTML WG】
http://toro.2ch.net/test/read.cgi/hp/1393153279/
Webサイト制作初心者用質問スレ part239
http://toro.2ch.net/test/read.cgi/hp/1393828207/
CSS初心者スレッド=12th=
http://toro.2ch.net/test/read.cgi/hp/1343429848/
Canvasについて語ろう
http://toro.2ch.net/test/read.cgi/hp/1305093769/
4 = :
■主要FAQ (全部はhttp://fiddle.jshell.net/vSqKr/33/show/ )
Q1. 別窓・フレーム内容やローカルファイルを読み書きしたいのですが…
A1. 別サーバのページやファイルの内容はセキュリティ制約でアクセス不可です。
Q2. document.write()でページ内容を追加したいのですが…
A2. 一度表示完了後にwriteするとページ内容が消去されます。DOM等別手段を。
Q3. table内容のinnerHTMLやDOMでの変更がうまく行かないのですが…
A3. IEではtable/tbody/trのinnerHTML書き換え不可です。DOMを使いますが、
DOMの場合tableの直下にはtbody要素が(作らなくても)あることに注意。
Q4. フォーム部品名を変数にした「...myform.変数名.value」が動きません…
A4. 「document.forms.myform.elements[変数名].value」でどぞ。
JavaScriptでは一般に「obj.x」と「obj['x']」は同じ意味です。
グローバル変数はwindowのプロパティなので「x」と「window['x']」も。
Q5. CSSで設定した背景色がe.style.backgroundColorで取得できないのですが…
A5. 取得には document.defaultView.getComputedStyle() を使う必要あり。
IEでは要素オブジェクトのプロパティcurrentStyleを使う。
Q6. setAttribute("class","foo")、setAttribute("onclick","bar()")が動きません…
A6. IEではそれは不可。「obj.className="foo"」「obj.onclick=bar」でどぞ。
Q7. タイマーやイベントハンドラに設定するコードにthisを含めたいのですが
「"...this..."」とか「function(){...this...}」ではうまく行きません。
A7. 実行時にthisが別のものを指してしまってる。以下のようにthisを束縛保存。
「function(x){return function(){...x...};}(this)」
Q8. input type="file"の値を設定(参照)できないのですが…
A8. セキュリティ制約のため設定は絶対に不可。参照はブラウザにより不可。
Q9. getElementById('ID名')や$('ID名')で要素が取れないのですが…
A9. コード実行時点でHTMLがそこまで読まれてない。window.onload 中でやるとか。
5 = :
■各種仕様 (http://fiddle.jshell.net/vSqKr/33/show/#Link も参照 )
◆ Standard ECMA-262
http://www2u.biglobe.ne.jp/~oz-07ams/prog/ecma262r3/ (ECMAScript 3 和訳)
http://www.ecma-international.org/ecma-262/5.1/ (ECMAScript 5.1 HTML版)
http://people.mozilla.org/~jorendorff/es6-draft.html (ECMAScript 6 有志HTML版)
http://kangax.github.io/es5-compat-table/ (ECMAScript 5 compatibility table)
http://kangax.github.io/es5-compat-table/es6/ (ECMAScript 6 compatibility table)
◆ HTML Standard (HTML5)
http://www.whatwg.org/specs/web-apps/current-work/multipage/
http://momdo.s35.xrea.com/web-html-test/spec/WD-html51-20130528/Overview.html (HTML5.1 部分訳)
http://www.hcn.zaq.ne.jp/___/WEB/WebStorage-ja.html (Web Storage 和訳)
◆ Document Object Model (DOM) / CSS Object Model (CSSOM)
http://www.hcn.zaq.ne.jp/___/WEB/DOM4-ja.html (DOM Standard (DOM4) 和訳)
http://www.w3.org/TR/DOM-Level-3-Events/ (DOM3 Events)
http://www.w3.org/TR/uievents/ (UI Events)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-ja.html (CSSOM 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-view-ja.html (CSSOM View Module 和訳)
◆ その他のWeb関連仕様
http://domparsing.spec.whatwg.org/ (DOM Parsing and Serialization - innerHTML等)
http://www.hcn.zaq.ne.jp/___/WEB/XHR-ja.html (XMLHttpRequest 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/File_API-ja.html (File API 和訳)
http://www.whatwg.org/specs/ (WHATWGの仕様一覧)
◆ MDN (Netscape/Mozilla)
http://developer.mozilla.org/ja/docs
◆ JavaScript Garden (ja)
http://bonsaiden.github.com/JavaScript-Garden/ja/
◆ JSON (JavaScript Object Notation)
http://www.json.org/json-ja.html
◆ MSDN Library
http://msdn.microsoft.com/ja-jp/library/yek4tbz0.aspx (JavaScript)
http://msdn.microsoft.com/ja-jp/library/cc427807.aspx (JScript)
http://msdn.microsoft.com/ja-jp/library/cc409712.aspx (DHTML)
6 = :
前スレより引用。
> 989 Name_Not_Found sage 2014/03/15(土) 19:13:55.27 ID:???
> hrefプロパティとhref属性は別物のようですが
> プロパティと属性の違いは何ですか?
属性はHTMLの用語。
プロパティはJavaScriptの用語。
hrefプロパティはDOM規定のIDL属性だが、そもそもhref属性値を返すプロパティとしたは定義されていない。
img要素のsrcプロパティも同様だし、他全てのプロパティで個別に定義されているから、DOM規定を読むといい。
7 = :
前スレより引用。
> 993 Name_Not_Found sage 2014/03/16(日) 01:34:52.82 ID:???
> >>992
> aタグ同士の同一性チェックではなく、
> URL自動リンク時の、a要素とリンク文字列の同一性チェックです
そもそも「リンク文字列が同一である必要がないのではないか」ということなのたが。
http://example.com とhttp://example.com/ は同じ場所を示すが、別と見なす必要があるとして理由は何なのだろうか。
8 = :
> 972 :Name_Not_Found:2014/03/15(土) 04:22:29.64 ID:???
> /が付くか付かないかを判定する必要があるのですか?
> 974 :Name_Not_Found:2014/03/15(土) 04:24:11.42 ID:???
> >>972
> 答えはイエスです
> 985 :Name_Not_Found:2014/03/15(土) 11:52:49.09 ID:???
> >>970
> しかし、hrefプロパティで困る状況は全く思いつかない
> 具体的にどうして困っているのか、補足が欲しい
> 987 :Name_Not_Found:2014/03/15(土) 16:12:32.72 ID:???
> >>985
> hrefが勝手に/を付けるので困るのは、aタグの同一性チェックのためです
> 完全に同じかを知りたかったので
この人とは会話が噛みあわない歯がゆさを感じた
質問テンプレに目的・意図を説明する項目を追加してほしいと思っていたけど無意味なのかな
9 = :
>>8
わかってないのはお前だと思うよw
10 = :
>>9は分かったの?じゃあ教えてよ
12 = :
どうやら私は違う星にきていたようですさようなら
13 = :
>>8
実装の方法を聞いてるだけなので
答えるのが面倒くさかったのです
「それ聞く必要ある?」というのが正直なところです
複雑な事情があるのにそれをすべて書くのはあまり意味がないでしょう
機能に局限して質問し回答する方がこのスレには相応しいと思いますよ
14 = :
だれか言えよw
>>1おつ
15 = :
>>13
じゃあ「言いたくないです」と一言言ってください
質問を理解してくれない人だと勘違いしてしまいます
やらなくてもいいことをやっている気がしたので聞いていたのです
まさに「それ聞く必要ある?」状態でした
16 = :
rangeについてですが、見た目上は同じ位置なのに、boundaryは異なることがあります
<span>hoge</span><a>moge</a>
こういったdom構造があった時
「hogeを持つテキストノードの終端」
「spanとaの間」
「mogeを持つテキストノードの先端」
の見た目上の位置は同じになります
これでは扱いにくいので、
見た目上同じboundaryの場合は一つのboundaryに正規化したいと思います
その際domツリーで見た時に一番rootに近いboundaryを得たいと思います
この例の場合は「spanとaの間」です
このように与えられたboundaryを正規化する関数を書きたいのですが
どうすればいいでしょうか?
17 = :
>>10
お前、ホント馬鹿だな。
A要素のhref属性から取得した文字列が
ソースコードの文字列と一致するか調べる時に
hrefから取得した文字列の最後に/がついていたりついていなかったりしたら
比較がコケるじゃん。そんなことも分からないの?
18 = :
>>13
> 機能に局限して質問し回答する方がこのスレには相応しいと思いますよ
この言葉は「聞かれた質問にだけ答えろ」ということでしょうか?そう解釈して話を続けます
ここは質問スレです 初心者が質問することも多いと思います
そのような方が考えだした方針が必ずしも最善であるとは思えません
他にもっと良い方針があったらそちらを教えるべきでしょう
逆に自分の方針が最善だと自信を持って言える方にこのスレッドは不要でしょう
19 = :
>>17
それは比較の仕方がホント馬鹿ですよ
20 = :
>>19
おや? やっと意味がわかったんですか。
質問に答えられたということは、意味がわかったということですね。
21 = :
>>19
意味がわかったのなら、馬鹿じゃない比較方法も
答えましょうよw
22 = :
>>13
> 複雑な事情があるのにそれをすべて書くのはあまり意味がないでしょう
それならば、始めから背景を説明すべきだろう。
あなたの考える実装方法が目的に即してないかもしれない、と考えて代替案を示すのはよくある事。
それをしないなら、質問者と永遠に答えのない不毛な議論を繰り広げる事もある。
> 「それ聞く必要ある?」というのが正直なところです
それを聞く必要がない、と判断出来るだけの情報がなかったから質問したのだが…。
答えるのが面倒なら質問されない工夫をした方がいいと思う。
率直にいってしまえば、「DOM 仕様を理解してない人が理解している人に『聞く必要がない』とか、偉そうな事をいえるのか?」というところだが。
23 = :
前スレ>>950です、レスありがとうございました
プロトタイプベースの書き方について調べてみようと思います
24 = :
584 :578:2014/03/15(土) 19:58:34.60 ID:???
ググったらわかった。
585 :Name_Not_Found:2014/03/16(日) 13:09:38.99 ID:???
なんで聞く前にググらないんだろ
586 :Name_Not_Found:2014/03/16(日) 13:29:48.93 ID:???
最終的にググって自分で見つけることになったとしても
書き込んでいれば、誰かが代わりにググってくれるかもしれない。
運がよければ、自分の時間を省ける。
589 :Name_Not_Found:2014/03/16(日) 14:37:54.29 ID:???
>>587
忙しいんですよ。他にやることがある。
他のやることをやっている間に
他人が調べてくれたら超ラッキーw
592 :Name_Not_Found:2014/03/16(日) 17:51:02.84 ID:???
うん。だから「自分で調べましたがわかりませんでした」って
定型文を入れるようにしているよ。
25 = :
>>16
<a></a> の中を指しているboundaryの正規化は
<a>の前か</a>の後ろか?どちらにするか定義する必要がある
(他にも<a></a><b></b> の</a><b>の狭間のboudaryの正規化は
そのままにするのか<a>の前か</b>の後にするのか?)
結局は「後ろへの正規化」と「前への正規化」の二種類の処理が必要になるだろう
boudaryのoffsetが 0 かノードの長さ(文字数または子ノードの個数)
に等しいときはboudaryを親ノードに移す等々
26 = :
>>25
なるほど、要素が空の時はそうなりますね
同一階層ならなるべく前方、階層が異なるなら階層が浅い方、というルールでいこうと思います
ありがとうございました
27 = :
urlをhttp://example.com/#/dir1/dir2/
のようにしようと思い
location.href='#/dir1/dir2/';
を使っていたのですがsafariでやると貼っているadsenseのページが表示されてしまいました
この方法以外にハッシュを変える方法はあるのでしょうか?
safariに関しては諦めるべきなのでしょうか?
28 = :
>>27
ぐぐれば解決します
29 = :
ググれば解決って言ってる奴アホだろ
このスレがネットにおける知の最高峰ならともかく
そうでないならググれば解決するだろ
そしてもちろんそうではないのだから、何も言ってないのと同じ
30 = :
いやこれはググるべき問題だよ。
31 = :
「ぐぐれ」が許されるのは
答えることすら馬鹿らしいような常識的な質問の場合だけだ
それは質問と回答のやりとり自体が無駄だからな
そうでないなら「ぐぐれ」という書き込みこそ無駄で害悪だと心に留めよ
32 = :
ぐぐれ
34 = :
いや俺は質問者じゃねーから
35 = :
だいたいsafariだけ挙動が違うとか
それだけでもう一般的じゃない問題だろ
safariで検証なんて普通しないし
36 = :
>>34-35
回答にいちゃもんつけるなら、その回答の正当性も検証すべきだろ
ぐぐってみて解決するか確認もしないとか頭おかしい
> だいたいsafariだけ挙動が違うとか
> それだけでもう一般的じゃない問題だろ
おまえJavaScriptでハッシュ値を変更したことないだろ
location.hrefでハッシュ値変更が本当に正しいのか調べてからものをいえ
37 = :
俺は知らねーから。
俺が知らないってことは一般的じゃない
はい論破
38 = :
だいたい質問者の問題の定義が間違ってるなら
「ぐぐれ」などと言わずに定義が間違ってることを指摘しろよ
そうでないならsafariとかadsenseとかを検索語に含んで無駄に遠回りするだろうが。
問題定義の間違いはググりでは分かりにくい問題なのだから
A級以上の回答者ならそれを指摘する。
ぐぐれなどと抜かすのはC級回答者。
39 = :
いいからぐぐれ
40 = :
お子様理論か
自分の無知を棚に上げて他人を非難するとか、恥の上塗りすぎて同情できないな
41 = :
>>39-40
こんな情報量ゼロの書き込みしかできないのはD級回答者
42 = :
>>37
おまえはロンパールームに行ってろ
43 = :
>>41
おまえはだまっとけ
44 = :
JavaScriptをかじったことのある人ならlocation.hrefでおかしいとすぐ気がつく問題だしなあ
C級とかランク付する人は前からいたけど、この程度の知識がない人が他人を評価しても説得力がないなあ
45 = :
この問題がわからない人はD級回答者
自分のレベルがわかって良かったね
46 = :
>>27です
スレを荒らしてしまってすみませんでした
window.location.hash = hash;
で行けました
47 = :
location.hrefによるハッシュへの移動
なんて今まで書いたことねーな
縦に長いページが好きじゃないし。
よほど本当に一般的なテーマ以外は一般的など言えないということ。
質問スレでぐぐれとか言うやつほど低能、これはマジ。
48 = :
>>46
あなたのせいではないから気にしないで
用語はわかっているみたいだから、今後はぐぐって解決出来るか試してみてね
49 = :
>>46
これからもどんどん質問して下さい
舐めた回答者がいるけどお許しを
俺がちゃんと教育しておきますので
50 = :
>>47
hashへの移動ではなくurlに表示されるhashを変えたかっただけなんです
>>48
window.location.hashを見つけた時イベントを監視とかばかりだったのでそういう使い方が出来ないと決めつけてしまったのが悪かったようです
ありがとうございました
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/1/25 12:46
- + JavaScript の質問用スレッド vol.118 + (1002) - [97%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.116 + (1002) - [97%] - 2014/7/1 0:45
- + JavaScript の質問用スレッド vol.115 + (1001) - [97%] - 2014/5/29 16:16
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.119 + (1002) - [97%] - 2014/10/3 15:30
- + JavaScript の質問用スレッド vol.112 + (1001) - [97%] - 2013/11/27 16:46
- + JavaScript の質問用スレッド vol.111 + (1001) - [97%] - 2013/11/4 6:00
- + JavaScript の質問用スレッド vol.110 + (1001) - [97%] - 2013/10/13 14:01
- + JavaScript の質問用スレッド vol.134 + (1001) - [97%] - 2018/8/3 23:15
- + JavaScript の質問用スレッド vol.117 + (1009) - [97%] - 2014/8/5 3:30
- + JavaScript の質問用スレッド vol.104 + (1001) - [97%] - 2013/1/28 4:00
- + JavaScript の質問用スレッド vol.124 + (1001) - [97%] - 2015/7/16 1:30
- + JavaScript の質問用スレッド vol.144 + (288) - [97%] - 2020/5/17 20:00
- + JavaScript の質問用スレッド vol.121 + (1001) - [95%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.120 + (1002) - [95%] - 2014/11/8 1:15
- + JavaScript の質問用スレッド vol.122 + (1004) - [95%] - 2015/2/14 4:45
トップメニューへ / →のくす牧場書庫について