1 名前:まず >>2-10 読め! 続いて過去スレ全集を検索! mailto:sage [2009/04/14(火) 14:26:31 ID:???] ━━━本スレに書く事を許される者は以下の通り━━━━━ 一、JavaScriptはJavaとは別物であると知っている者 一、自ら学んでJavaScriptコードを書く意思を持つ者 一、ユーザに迷惑となるスクリプトを書かない者 一、質問を分かる日本語できちんと説明できる者 一、トラブルを再現する最小限のサンプルを貼れる者 一、テンプレ+FAQ>>2-10 /過去ログ/関連資料を読める者 ━━━━━━━━━━━━━━━━━━━━━━━━━━━ 自力で書く気がない人は他のスレへ(テンプレ末尾参照)。 前スレ pc11.2ch.net/test/read.cgi/hp/1235220962/l50 [必読]過去スレ全集 wing2.jp/~mirrorhenkan/2ch/javascript/ (ずべて同一) www2.atpages.jp/mirror/2ch/javascript/ usamimi.info/~mirrorhenkan/2ch/javascript/ [必読]ガイド developer.mozilla.org/ja/docs/Core_JavaScript_1.5_Guide (GuideをReferenceに→Netscape版言語仕様。多くの実装が準拠:ECMA-262.ed3) FAQ・注意・過去ログ・仕様書・関連資料・関連スレ>>1-10
2 名前:まず >>2-10 読め! 続いて過去スレ全集を検索! mailto:sage [2009/04/14(火) 14:28:01 ID:???] 【質問を書く上で】 1)ユーザ(閲覧者)に迷惑がかかる性悪スクリプトは回答されない。 例: 別窓開きまくり、閉じる/戻るのを妨害、全画面占有、etcは最悪。 答えさせようと「分からねえんだろ」と煽っても無駄(過去スレが証明)。 2)言葉でぐだぐだ書かずにソースを貼る、ただし要点を整理して。 そのまま貼って動かせると試してもらいやすい(ただし回答者に連結さすな!) 長い(1レスに入らない)場合はアップロードしてURIを貼る。 3)初心者という言葉は危険なので使わない方がよい。 初心者を言い訳に自力で調べない/考えない奴が最悪に嫌われる。 4)自分で調べたこと/試したこときちんと書く(調べもしない奴は最低)。 ただ「動きません」「エラーです」は何も情報がないため嫌われる。 エラーは「どの行で何のエラー」を書く(ブラウザをそのように設定すれ)。 ブラウザの設定すらできんヤシはFFxのJavaScriptコンソールを使え!!! OS、ブラウザ、バージョン、うまく行かない条件を明記しエラー再現可能に。 5)特に古いバージョン限定の時は必ず明記! 回答もチグハグになり回答者に2度 手間を食わせる可能性大(現行Ver.:IE5.5-6、N6-7、Opera7-8) 6)どういう時にどういう動作をさせたいのかを脳内にとどめずきちんと書く。 例:「自動ポップアップしたい」←どういう場合(マウスオーバー、クリック、 ボタン押し、select選択)に何(別窓、レイヤー、その他)が出るのか書け! 7)質問はまっとうな(他人に理解できる)日本語で。 前項の例に限らず、他人に理解できない質問文は煽られるだけで時間の無駄
3 名前:まず >>2-10 読め! 続いて過去スレ全集を検索! mailto:sage [2009/04/14(火) 14:28:55 ID:???] 【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 名前:まず >>2-10 読め! 続いて過去スレ全集を検索! mailto:sage [2009/04/14(火) 14:29:52 ID:???] 【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が置き換え前の文字列全体になります。 Q16. input type="file"の値を設定(参照)できないのですが… A16. セキュリティ制約のため設定は絶対に不可。参照はブラウザにより不可。 Q17. getElementById('ID名')や$('ID名')で要素が取れないのですが… A17. コード実行時点でHTMLがそこまで読まれてない。onload中でやるとか。
5 名前:まず >>2-10 読め! 続いて過去スレ全集を検索! mailto:sage [2009/04/14(火) 14:31:04 ID:???] 【主張の対立:他人の嗜好は尊重。損得の議論は歓迎】 ・仕様を読む:回答者なら仕様の該当部分は読んでいるべき。質問者でも 仕様を読まずうだうだ書く奴は注意されて当然。読み間違いは生温く指摘。 ・英文文書:翻訳の努力を惜しむべからず。 読めないなら和訳を探し、 なければあきらめよう。翻訳サイトを知っている人はうまく誘導してあげて。 ・IE専用/アンチIE/クロスブラウザ:「○○は不要」「○○だけであと は無視」は不毛。質問者が分かって選択していれば尊重する。無知か らIE専なのは指摘してあげると親切。 ・標準準拠 vs 使えればよい:標準はブラウザが変わっても維持される 可能性大。非標準機能も損得を分かった上で使うならよい。 ・MS vs アンチMS:MS固有の情報はMSのサイトで見ないと分からないが、 そこだけ見ているとIE専になる。あとは上2件と同様。 ・別窓、イベント抑止など:一般には迷惑スクリプトだが質問者に正当 な理由があることも。尋ねて分かってないようなら煽っても可(w ・innerHTML vs DOM:それぞれに長所/弱点があるので理解した上で選 択するべき。一概にどちらは駄目、とは言えない。 ・on属性 vs addXXX():ハンドラが1つだけと分かっていればon属性 で簡単にハンドラを設定もあり。上書きが心配ならaddXXX()。
6 名前:まず >>2-10 読め! 続いて過去スレ全集を検索! mailto:sage [2009/04/14(火) 14:33:50 ID:???] ECMA-262 ed.3 → www.ecma-international.org/publications/standards/ECMA-262.HTM → www2u.biglobe.ne.jp/~oz-07ams/prog/ecma262r3/ (和訳) W3C Document Object Model Technical Reports → www.w3.org/DOM/DOMTR JavaScript 1.5 ガイド / リファレンス (Netscape/Mozilla) → developer.mozilla.org/ja/docs/Core_JavaScript_1.5_Guide (和訳) → developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference → developer.mozilla.org/ja/docs/Core_JavaScript_1.5_Reference (和訳) E4X (ECMAScript for XML) → www.ecma-international.org/publications/standards/Ecma-357.htm → www.ne.jp/asahi/nanto/moon/specs/ecma-357.html (和訳) Mozilla Gecko DOM Reference, Netscape devedge → developer.mozilla.org/en/docs/Gecko_DOM_Reference → developer.mozilla.org/ja/docs/Gecko_DOM_Reference (和訳) → devedge-temp.mozilla.org/central/javascript/index_en.html MSDN Library JScript / DHTML (現在日本語版は古杉) → www.microsoft.com/japan/msdn/library/ja/script56/html/js56jsoriJScript.asp → msdn2.microsoft.com/en-us/library/ms533050.aspx
7 名前:Name_Not_Found mailto:sage [2009/04/14(火) 14:35:48 ID:???] 終了
8 名前:まず >>2-10 読め! 続いて過去スレ全集を検索! mailto:sage [2009/04/14(火) 15:10:12 ID:???] 【チュートリアルサイト・サンプルサイト】 規格が読めないならまずはチュートリアル。サンプルサイトも沢山ある。 (とほほは間違いが多いためこのスレでは批判的意見が多い) (以下は精選すべきとの議論あるが進んでいないので玉石混淆) MetaGraphic Cell → www2u.biglobe.ne.jp/~oz-07ams/prog/ どら猫本舗のリファレンスカウンター → www.doraneko.org/ はぎさんちのページ Mozilla's DOM Sample Project → cgi.din.or.jp/~hagi3/JavaScript/JSTips/Mozilla/mds.cgi オブジェクトなJSの基礎講座 → chaichan.web.infoseek.co.jp/src/2ndthema.htm 【関連スレ】 板違い、スレ違いに注意!サーバ側での処理はWebProg板へどぞ! Webサイト制作初心者用質問スレ Part 208 → pc11.2ch.net/test/read.cgi/hp/1233121174/l50 CSS初心者スレッド=6th= → pc11.2ch.net/test/read.cgi/hp/1234355194/l50 役に立つ書籍は? 4冊目 → pc11.2ch.net/test/read.cgi/hp/1172823674/l50 1行javascriptプログラミング → pc11.2ch.net/test/read.cgi/hp/1066750037/l50 WSH(・∀・)スレッド! Part 3 → pc11.2ch.net/test/read.cgi/tech/1208948450/l50
9 名前:Name_Not_Found mailto:sage [2009/04/14(火) 15:11:51 ID:???] 次スレ pc11.2ch.net/test/read.cgi/hp/1239686791/l50
10 名前:Name_Not_Found mailto:sage [2009/04/14(火) 17:56:17 ID:???] thickboxについて質問なんだけど if (document.getElementById("TB_HideSelect") === null) {//iframe to hide select elements in ie6 $("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>"); $("#TB_overlay").click(tb_remove); } という記述があったんだが if ($("#TB_HideSelect") === null) {//iframe to hide select elements in ie6 $("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>"); $("#TB_overlay").click(tb_remove); } とするのと何か違うの? 中途半端にjQuery使ったりしてるんだが・・・
11 名前:Name_Not_Found mailto:sage [2009/04/14(火) 17:58:28 ID:???] /) ///) /,.=゙''"/ / i f ,.r='"-‐'つ こまけぇこたぁいいんだよ!! / / _,.-‐'~/⌒ ⌒\ / ,i ,二ニ⊃( ●). (●)\ / ノ il゙フ::::::⌒(__人__)⌒::::: \ ,イ「ト、 ,!,!| |r┬-| | / iトヾヽ_/ィ"\ `ー'´ /
12 名前:Name_Not_Found mailto:sage [2009/04/14(火) 18:01:55 ID:???] >>10 jQueryの$()はid以外も受け付けるから若干無駄。 まあコメントからしてIE6特有の症状を回避させるためみたいだし もらったパッチそのまま当てたとかで書いた人が違うんじゃね?
13 名前:Name_Not_Found mailto:sage [2009/04/14(火) 19:01:35 ID:???] >ここで比較するべきはindexOf。 違うだろ。
14 名前:Name_Not_Found mailto:sage [2009/04/14(火) 19:24:09 ID:???] 違うな。スマン。
15 名前:Name_Not_Found [2009/04/14(火) 20:06:29 ID:lcH7LDKF] 質問:フォーム部品のtext入力フィールド内の文字列の表示を Firefox上でスクロールさせるにはどうしたらよいでしょうか? 例:IEやChromeの場合は scrollLeft などを使えばスクロールするのですが、 Firefoxではどうやっても全くスクロールしてくれません。 <!-- simple example --> <html> <head><script type="text/javascript"> function Scroll() {document.FORM.INPUT_TEST.scrollLeft = 80;} </script></head> <body> <form name="FORM" action="#"> Text: <input type="text" name="INPUT_TEST" value="1234567890" size="5"><br> Scroll to: <input type="button" value="RightSide" onclick="Scroll()"> </form> </body> </html>
16 名前:15 [2009/04/14(火) 20:10:06 ID:lcH7LDKF] マウス操作による入力支援機能のJavaScriptを作ったのですが、上記理由のため Firefoxでは文字列が長くなった時にカーソル位置の文字が表示されなくなり困っております。 ヒント等ご助言よろしくお願いします。
17 名前:Name_Not_Found mailto:sage [2009/04/14(火) 20:12:42 ID:???] Firebugではエラーなどは?
18 名前:Name_Not_Found mailto:sage [2009/04/14(火) 20:26:29 ID:???] >>1 乙 これはうんたらかんたら以下略
19 名前:Name_Not_Found mailto:sage [2009/04/14(火) 20:33:45 ID:???] >>15 スクロールバーが出てないとダメっぽい。 キャレット動かしたら? ttp://d.hatena.ne.jp/onozaty/20060305/p1
20 名前:15 [2009/04/14(火) 20:49:59 ID:lcH7LDKF] >>17 Firefoxでは、 .scrollLeft に値を入れてもエラーにならず 0 のまま変化せず 無視されている感じです。 >>19 縦方向にテキストボックスを沢山並べて使っているので、 1行分に相当する太い横スクロールバーが出ると画面が崩れて困るんです。 前後の文字が見えないと困るので縦スクロールバーもイマイチ。 テキストエリアを使ってスクロールバーを強制的に出さない指定をした場合は、 JavaScriptの制御からはスクロールはするみたいなのですが 今度はキーボード入力の方でスクロールしなくなったので使えませんでした。
21 名前:Name_Not_Found mailto:sage [2009/04/14(火) 21:07:47 ID:???] キャレット動かしても追従してくれないのか・・・
22 名前:Name_Not_Found mailto:sage [2009/04/14(火) 22:13:25 ID:???] 皆さん、どんな参考書で勉強されてますか? 市販の参考書って、ただ文字が羅列されているだけでとっつきにくくて困るんですが 何かいいのありますか?
23 名前:Name_Not_Found mailto:sage [2009/04/14(火) 22:18:04 ID:???] ぐぐる→いろいろ覚える って感じ これで知識は蓄積していくから。
24 名前:Name_Not_Found mailto:sage [2009/04/14(火) 22:24:44 ID:???] おぉ、マジですか? ネットで独学されているんですね? 自分、PCは目が痛くなるので基本的に本なのですが、30冊くらい本屋で探しても、どれも分かりにくくて・・・ どんな効果が出るのかという写真すら付いていない本が多いような気がします
25 名前:Name_Not_Found mailto:sage [2009/04/14(火) 22:25:12 ID:???] おまいさんがとっつきやすい例を挙げてよ
26 名前:Name_Not_Found mailto:sage [2009/04/14(火) 22:35:44 ID:???] やっぱ動作例が画像である方が分かりやすいです 後、HTML+CSSでは良くあるのですが、JavaScriptを使ったHPの作り方例とか 例えば、Yahoo!型のページではココにこういうJavaScriptを埋め込むと効果的なような それに、例えばFancymenuのカスタマイズなど急に出てきても、あれだけの文字列の中からカスタマイズ部分を見つけて編集するのは自分には難しいので、そういった少しレベルの高いものとかを扱っている本も知りたいです
27 名前:Name_Not_Found mailto:sage [2009/04/14(火) 23:12:36 ID:???] PCで目が痛くなるからとか Javascript以前の問題だろ
28 名前:Name_Not_Found mailto:sage [2009/04/15(水) 00:09:08 ID:???] スクリプトを一番先に読み込ませる方法とか無い?
29 名前:Name_Not_Found mailto:sage [2009/04/15(水) 00:17:03 ID:???] >>28 一番上に<script></script>を置く。それだけ。もっとも<head>よりは 後でないとvalidなHTMLにならないんだっけかな。
30 名前:Name_Not_Found mailto:sage [2009/04/15(水) 00:30:13 ID:???] JavaScript4.0で何が変わりますか?
31 名前:Name_Not_Found mailto:sage [2009/04/15(水) 01:00:53 ID:???] とりあえず2chブラウザを1日で作れるって人は来週までに作って見せてもらいたいもんだ
32 名前:Name_Not_Found mailto:sage [2009/04/15(水) 03:05:42 ID:???] <input type="file">で選択したファイル名を取ると IE8だとC:\fakepath\ファイル名を返してくる。 fakepathって何だよ
33 名前:Name_Not_Found mailto:sage [2009/04/15(水) 08:12:18 ID:???] >>32 javascriptで取得出来る訳ねーだろ
34 名前:Name_Not_Found mailto:sage [2009/04/15(水) 08:18:30 ID:???] IE5.5/6/7 / Safari3.2 / Opera9 / GoogleChromeはファイルのフルパスが取れた Firefoxはファイル名のみ取れる
35 名前:Name_Not_Found mailto:sage [2009/04/15(水) 08:41:47 ID:???] >>32-34 その仕様はセキュリティのためだから、今後次第に厳しく なる方向に行くと思われ。最終的には(実質)ファイル名だけに統一?
36 名前:Name_Not_Found mailto:sage [2009/04/15(水) 10:31:06 ID:???] >>31 お前神経質って根に持つタイプって言われるでしょ
37 名前:Name_Not_Found [2009/04/15(水) 11:00:14 ID:iCwtuj99] <form id="form1" runat="server"> <div> <input id="btn" type="button" value="無効" /> </div> </form> <script type="text/javascript"> document.getElementById('btn').onclick = setButtonState(); function setButtonState() { var flag = false; var btn = document.getElementById('btn'); //@ return function() { flag = !flag; this.innerText = flag ? "有効" : "無効"; //A }; } </script> @ITのサイトでJavaScriptを勉強中なのですが サンプルコードで理解できない箇所があったのですみませんが教えてください。 サンプルコードは有効/無効のトグルボタンを機能させるものです。 まず、@のコードの存在意味がわかりません。変数btnって使ってないですよね・・? そしてAのthisキーワードですが、document.getElementById('btn')のonclickイベントハンドから実行されているので、 ここでのthisはdocument.getElementById('btn')を指すという考えで正しいでしょうか? よろしくおねがいします。
38 名前:37 mailto:sage [2009/04/15(水) 11:03:44 ID:???] www.atmarkit.co.jp/fdotnet/ajaxjs/ajaxjs03/ajaxjs03_04.html サイトのURLです。
39 名前:Name_Not_Found mailto:sage [2009/04/15(水) 11:05:23 ID:???] >>38 thisはsetButtonState()で、 document.getElementById('btn').onclick = setButtonState();が宣言されてるから thisはdocument.getElementById('btn').onclick ってことかな、多分 ってかURL冒頭のhくらい抜いておけ、外部サイトなんだから
40 名前:Name_Not_Found mailto:sage [2009/04/15(水) 11:06:36 ID:???] jigsaw.w3.org/css-validator/ 上記のサイトのように、CSSやxHTMLだけじゃなく、JavaScriptの検証サービスしているサイトってないのでしょうか? どこの構文が間違っているとか教えてくれる
41 名前:Name_Not_Found mailto:sage [2009/04/15(水) 11:08:18 ID:???] JavaScript標準とかないからないんじゃね?
42 名前:Name_Not_Found mailto:sage [2009/04/15(水) 11:23:15 ID:???] 皆ってJavaScript間違って機能しない時ってどうやって間違いの箇所見つけるの? 一つ一つ探すんだろうけど、長文だときつくない?
43 名前:Name_Not_Found mailto:sage [2009/04/15(水) 11:58:37 ID:???] Firebug
44 名前:37 mailto:sage [2009/04/15(水) 12:07:07 ID:???] >>39 次からはh抜きます。 thisについて調べて少しわかりました。 document.getElementById('btn').onclick = setButtonState(); で、btn要素ノードのプロパティとしてsetButtonState()を 代入しているから。と理解しました。 ありがとうございました。
45 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:12:08 ID:???] >>37 @確かに使ってないね A正しい >>39 >hくらい抜いておけ なんか意味あるのそれ?エロ広告が挟まれるのはうざいけど >>40 JSLintとか
46 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:15:35 ID:???] >>45 2chやっててh抜く意味わからないやつとか初めて見た・・・。 直リンに対する配慮、マナー
47 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:21:09 ID:???] >>46 今時h抜きにこだわってるヤツもひさびさに見たw
48 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:21:12 ID:???] >>31 ネタというかテンプレ厨の虚言を信じる方がアホでは。 OSSでは大抵historyを公開しているので、個々のプロジェクトでどのくらい時間が掛かっているのかは判るだろ。 Webアプリならプロトタイプ(試作品)段階なら、少なくとも2,3日で形にしなければ駄目だけど。
49 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:26:22 ID:???] 個人のサイトならともかく @IT を h 抜きにしたって意味ないだろ
50 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:26:24 ID:???] >>46 昔から2chでだけ見かける主張だけどいまいち意義が不明だったもんで。 マナーを言うならむしろReferer不明になるから相手にとって余計不気味なんと違う?
51 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:28:31 ID:???] リファラが不明だ・・・ きっとブックマークから直接来てくれたんだ!
52 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:52:21 ID:???] yahooとか大多数が見てるようなら抜かなくておk
53 名前:Name_Not_Found mailto:sage [2009/04/15(水) 12:55:35 ID:???] >>50 通常のWebブラウザ利用での2chでは、httpからの文字列を貼るとそれがそのままリンクになるので、 アドレスバーへのコピペより遥かに容易にリンク先へ飛ぶ事が出来、 特に興味が無くても試しに見てみるかというユーザーからのアクセスも行われ、 リンク先の急激なトラフィック増加を招く可能性もあるから。 とはいえ現在ではブラウザで2chを見る人間の方が希少なので、 もはやそのような意味での直リン嫌悪は無いけれど、 相変わらず宣伝目的で直リンクを貼るアホが多いので嫌われるという状態。
54 名前:Name_Not_Found mailto:sage [2009/04/15(水) 14:10:08 ID:???] jQueryの質問です。 <div id="A"><span>あいうえお</span></div> <div id="B"></div> で、$('#B').append($('#A').children()); とすると、Aの<span>あいうえお</span>がBに移動しますけど この場合のAの<span>あいうえお</span>を消さずに、コピーするような形で持ってくる方法ってありませんか?
55 名前:Name_Not_Found mailto:sage [2009/04/15(水) 14:14:00 ID:???] $('#B').append($('#A').children().clone()); とかてきとーに言ってみる。
56 名前:Name_Not_Found mailto:sage [2009/04/15(水) 14:31:28 ID:???] >>55 ありがと そんな関数あったのか
57 名前:Name_Not_Found mailto:sage [2009/04/15(水) 16:51:07 ID:???] 個人サイト相手でもないのにh抜きとか馬鹿じゃね。
58 名前:Name_Not_Found mailto:sage [2009/04/15(水) 16:53:58 ID:???] 洩れの解釈はちょっと違って、個人サイトでも企業サイトでも、 あるコンテンツが2chから直リンだと分かるとあわてて隠したり 改変したりされることがあるから、だから直リンは避けるのだと 思っていたけど違うのかな。
59 名前:Name_Not_Found mailto:sage [2009/04/15(水) 16:55:42 ID:???] h入ってると宣伝かと思ってしまうな
60 名前:Name_Not_Found mailto:sage [2009/04/15(水) 16:59:38 ID:???] h
61 名前:Name_Not_Found mailto:sage [2009/04/15(水) 17:12:16 ID:???] blog.livedoor.jp/dankogai/
62 名前:Name_Not_Found mailto:sage [2009/04/15(水) 17:23:38 ID:???] 前スレにeval禁止教徒(?)の話が出ていたが単純にリンク禁止教なんだと思うよ。 スレの性質に関係なく「sageろカス」とかいうのもその類。 言われてた当初はそれなりに意味があったのかもしれないけど 多くは思考停止して闇雲に追従しているだけみたいな。 「スクリプトのコードはコメントタグで囲わなきゃいけないんだよ^^」なんて 自称JSそれなりに知ってる人さんから優しく“指導”されたことがある。 そのくせ「Netscapeなんてもう誰も使ってないし切り捨てていいよ」みたいな。はぁ。 自称JSそれなりに知ってる人さんにとっては、Netscapeなんかよりも JavaScript非対応でコードが文字列としてずらずらと表示されちゃうブラウザ (NCSA Mosaicとかですかね?)の占めるシェアの方が無視出来ないらしいです。
63 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:01:01 ID:???] >>62 そういう類の馬鹿が貼り付いてるのは確か。
64 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:11:39 ID:???] Netscape(広く支持されたversion4まで)よりも新しい数年前の携帯機種(N900i)は、 body内のscriptの内容をそのまま表示してたな。 今はhead内のscriptはCDATAとして扱い、body内のscriptは相変わらず<!--でコメント化。
65 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:21:26 ID:???] >>64 CHTMLブラウザにHTML食わせるほうが悪い
66 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:25:00 ID:???] 各ブラウザ別の仕様とかいちいちみてないから 適当に書いて各ブラウザで動くかで確認してるんだけど どの程度まで対応できればいい? 最新のIE Firefox Safari Opera Chromeで動けばおk? IEとFirefoxとSafariしか入れてないけど
67 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:26:45 ID:???] >>66 そりゃ、あなたのサイトを見に来る人がどんなブラウザを使ってるか調べるのがいちばん良くわかる。
68 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:29:10 ID:???] >>67 えーーいまどきアクセス解析なんていれたくないよう まぁIEだけ特殊と認識してるから IE+ほかのブラウザ1つで動けばいいよね・・・
69 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:32:02 ID:???] >>66 IE6・7 FF2・3 Safari Opera これくらいかな Chromeのテストはまだいらない感じ
70 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:33:22 ID:???] chromeの需要は上がってきてるよ ie8もアップデーターで更新できるようになってるよ
71 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:35:07 ID:???] IE8もうアップデーターきてるのか じゃあその2つも追加だな
72 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:37:05 ID:???] ブラウザの別バージョンって共存できるのか しらんかった
73 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:37:45 ID:???] スタンドアロン型の使えばいいんじゃね
74 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:43:42 ID:???] Internet Explorer、Firefox、Opera、Safari、Chromeに対応していればPCからアクセスするほぼ全てがカバー出来るだろうね SeaMonkeyなんてマニアックな物使ってる人も中にはいるけど All ttp://www.dotup.org/uploda/www.dotup.org9125.png IE ttp://www.dotup.org/uploda/www.dotup.org9127.png Firefox ttp://www.dotup.org/uploda/www.dotup.org9128.png
75 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:44:46 ID:???] Firefoxのシェア上がってきて嬉しいな
76 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:53:21 ID:???] >>69 Fx2は要らないんじゃない?サポート終了してるし。
77 名前:Name_Not_Found mailto:sage [2009/04/15(水) 18:54:30 ID:???] OperaがSafariより高いのが意外だな
78 名前:Name_Not_Found mailto:sage [2009/04/15(水) 19:04:30 ID:???] Windows 7 に良いところないし IE8 もダメブラウザだから 後10年は IE6 切れないな。
79 名前:Name_Not_Found mailto:sage [2009/04/15(水) 19:13:03 ID:???] >>65 関っている全てのサイトで一々携帯用ページを作成する事はまず無いな。 >>70 ttp://www.w3counter.com/globalstats.php 確かに日本だとこの統計よりもchromeユーザーが多いという印象。
80 名前:Name_Not_Found mailto:sage [2009/04/15(水) 19:17:57 ID:???] Googleの携帯向けページに変換する機能便利
81 名前:Name_Not_Found mailto:sage [2009/04/15(水) 19:30:49 ID:???] ttp://codezine.jp/blog/2008/11/moneyzine.php ここ調べによると、IE・FF・サファリ・ちょろめ・オペラが上位ブラウザっぽいねぇ 私は、それ+ネスケではチェックするようにしてるw
82 名前:Name_Not_Found mailto:sage [2009/04/15(水) 19:37:09 ID:???] >>76 俺もそう思うが、今月納品の某大企業のサイトはIE6とFx2で要確認だった。
83 名前:Name_Not_Found mailto:sage [2009/04/15(水) 21:42:19 ID:???] jsの同一ドメイン制限って abc.foge.com/ と efg.foge.com/ は同じドメインとして許可されるんでしょうか? あと、レンタルサーバでは foge.com/user1/ と foge.com/user2 のようにサブディレクトリ単位でユーザーに 貸し出しているサービスがありますが、これってXSSが可能ってことですよね?
84 名前:Name_Not_Found mailto:sage [2009/04/15(水) 23:08:45 ID:???] 例えでドメインを使うならexample.comを使え ttp://ja.wikipedia.org/wiki/Example.com javascriptはサブドメインも完全に区別する 同じドメインなら制限はない
85 名前:Name_Not_Found mailto:sage [2009/04/16(木) 00:46:24 ID:???] 新規サイトを制作するにあたって、以下の事を考えています。 1.リファラからURL取得 2.URLから検索キーワード抜き出し 3.検索キーワードから各ページへ遷移 これらはJavaScriptだけで実現可能でしょうか? 実現可能・不可能以前に、PHP使った方が一般的、 とか、その辺を知りたいのですが、よろしくお願いします! (大掛かりなFLOとかじゃなく簡易的なものとして)
86 名前:Name_Not_Found mailto:sage [2009/04/16(木) 01:16:22 ID:???] >>85 できる。 3でURLをJSのみで生成できる範囲ならどっちでもいいと思う。 遷移先URLをサーバに問い合わせるなら まとめてサーバサイドでやったほうが良いけど。
87 名前:Name_Not_Found mailto:sage [2009/04/16(木) 01:28:20 ID:???] >>85 ref = document.referrer;//リファラ取得 ref = "www.google.co.jp/search?source=ig&hl=ja&rlz=1G1GGLQ_JAJP245&=&q=JavaScript+%E3%81%AE%E8%B3%AA%E5%95%8F%E7%94%A8%E3%82%B9%E3%83%AC%E3%83%83%E3%83%89&btnG=Google+%E6%A4%9C%E7%B4%A2&meta=lr%3D&aq=f&oq= ";//デバッグ用にGoogle検索のURLを上書き if(ref!==""){//リファラがあるか調べる ref = decodeURI(ref);//URIデコード switch(ref.match(/^http:\/\/.+\//i)[0]){// http://〜から始まるホストを取得 case "www.google.co.jp/ "://www.google.co.jp/ だった時の処理 alert(/&q=[^&]+/i.exec(ref));// &q=から始まる検索ワードをダイアログで表示 break; } } ちょっと書いてみた
88 名前:Name_Not_Found mailto:sage [2009/04/16(木) 02:18:54 ID:???] 文字コードはどうすんだろ
89 名前:Name_Not_Found mailto:sage [2009/04/16(木) 05:04:39 ID:???] とあるドメインでの話 外部ドメイン画像(絶対パスの画像)を含むHTMLをローカルで表示するには読み込み可能なんだけど、 そのHTMLをサーバーにアップした場合には画像が表示されない サーバーにアップした場合で画像を表示するようにできないかな? 言いたいことがうまく表現できなくてスマソ・・・
90 名前:Name_Not_Found mailto:sage [2009/04/16(木) 05:37:17 ID:???] ヒント:リファラ
91 名前:Name_Not_Found mailto:sage [2009/04/16(木) 05:57:37 ID:???] はてななんかが Google 検索のリファラ見て当該文字のハイライトやってるね。 何か覗かれてるみたいで癪だから無駄にアドレスバー直打ちで行くけど。 >>89 リファラを見て画像の直リンを弾くのは 1. 自社ドメインのリファラでない場合。 2. 他社ドメインのリファラの場合。 の2つのタイプがよく見られるね。>>89 のは後者のタイプだね。 ローカルファイルに埋め込む分にはブラウザはリファラを発行しないから。 ブラウザの発行するリファラは JavaScript でコントロール出来るものではないよ。 自分用なら Proxomitron なんかでどうとでも出来るんだけどね。
92 名前:83 mailto:sage [2009/04/16(木) 06:14:28 ID:???] >>84 なるほど、ありがとうございました。 最近のレンタルスペースが user1.example.com/ のようなURLで レンタルしてるしてるのは理にかなってたのかー。
93 名前:85 mailto:sage [2009/04/16(木) 08:43:21 ID:???] >>86 ,87 ありがとうございます。 なるほど、JSだけで出来そうですね。 文字コードの変換をどうするのかなっていうのが気になってたんですが、 decodeURIでいけるのか。 遷移先URLに関しては固定でよいので、 サーバーに問い合わせる必要はなさそうです。
94 名前:Name_Not_Found mailto:sage [2009/04/16(木) 09:07:59 ID:???] >>91 なるほど。わかりやすい つまり、やりたい事はできないってことですね(´・ω・`)ショボーン
95 名前:Name_Not_Found mailto:sage [2009/04/16(木) 11:13:17 ID:???] プロキシCGI、またはそれと同じような振る舞いをするWEBサービスを悪用すれば出来なくもない
96 名前:Name_Not_Found [2009/04/16(木) 19:50:17 ID:abl44l0y] >>91 数年前、リファラの検索文字列を見て、広告内容を振り分ける、 というのを思いついていい気になっていたら、 NTTDATAがそれの特許持ってるのがわかってあきらめた。 まさかみんなやるようになっても何も言ってこないなんて。 やったもん勝ちだなあ。
97 名前:Name_Not_Found mailto:sage [2009/04/16(木) 20:22:16 ID:???] >>96 リファラでページの表示内容を変更するのは、インターネット誕生のころからある技術で あって、独自性がないから、そんな特許は無効だと思うよ。 裁判してもNTTDATAはまず勝てないだろう。
98 名前:Name_Not_Found mailto:sage [2009/04/16(木) 22:52:05 ID:???] むしろNTTDATAが取ってて良かったってことさ。 そういうしょうもない特許でも、誰も取ってないとどこかの馬の骨が取得してごねてくるからな。
99 名前:Name_Not_Found mailto:sage [2009/04/16(木) 22:58:59 ID:???] NTT DATA だって、ハードディスクのバックアップすら出来ないカス企業だけどな
100 名前:Name_Not_Found mailto:sage [2009/04/16(木) 23:46:58 ID:???] >>97 インターネットの誕生のころにはWWWなんてなくて、まして リファラもないんだけどな。
101 名前:Name_Not_Found mailto:sage [2009/04/17(金) 06:01:56 ID:???] JavaScriptはどういうものかという所から覚えられるサイトってありますか?
102 名前:Name_Not_Found mailto:sage [2009/04/17(金) 12:27:56 ID:???] WikipediaのJavaScriptの項目が理解できないのなら JavaScriptでぐぐってでてきたサイトを片っ端からサーフィンする 英語が読めるなら外国のサイトのほうが有益な情報がいっぱいあると思う
103 名前:Name_Not_Found mailto:sage [2009/04/17(金) 13:10:43 ID:???] JavaScriptはブラウザが実行環境のスクリプト言語 ブラウザで動作するので新しく用意するものが何もなくてお手軽 (ブラウザによって挙動が変わる可能性があるので本格的に始めると色々準備がいるけど) クライアント側で処理を行うので閲覧者のPCに負荷がかかる(サーバにやさしい) セキュリティ上クライアントにテキストを作成して情報を保存なんてことはできないので 情報を保存するにはクッキーやPHP等と連携してサーバ側に保存する必要がある onイベントハンドラとHTMLのフォームを駆使してブラウザ上でGUIアプリケーションを構築できる (やろうと思えばOSっぽいものも作成可能 osx.portraitofakite.com/ ) どういうものが向いてるかといえば 計算などのシミュレーション関連(サーバ側で多数で行うと負荷が高い&ページ遷移を行わないのでスムーズ) 視覚的効果を与えるもの www.schillmania.com/projects/snowstorm/ highslide.com/ (写真をクリック) リッチインターネットアプリケーション GoogleによるAjax作品の数々
104 名前:Name_Not_Found mailto:sage [2009/04/17(金) 13:11:56 ID:???] あれだ 普通のホームページ=絵本と考えたら ホームページ+JavaScript=飛び出す絵本だ
105 名前:Name_Not_Found mailto:sage [2009/04/17(金) 13:21:41 ID:???] jQueryで質問です。 <script type="text/javascript">//[CDATA[ $(document).ready(function(){ $('[id*="slideText"]').css('display','none'); $('[id*="slideButton"]').hover(function(){ $(this).css('cursor','pointer'); },function(){ $(this).css('cursor','default'); }).click(function(){ //ここでID名など取得 }); }); //]]></script> </head> <body> <div id="slideButton1"><button>ああ</button></div> <div id="slideText1"> スライドされたテキスト1 </div> <br /> <div id="slideButton2"><button>いい</button></div> <div id="slideText2"> スライドされたテキスト2 </div> こんな感じでボタンの番号とスライドしたいテキストの番号を合わせれば そのボタンを押せば、テキストをスライドできるような仕組みを作りたいのですが 現在hoverしているIDの取得とかって可能でしょうか?
106 名前:105 [2009/04/17(金) 13:22:53 ID:4ZWfjgC0] ↑ID出すの忘れてました…すみません。
107 名前:Name_Not_Found mailto:sage [2009/04/17(金) 13:58:13 ID:???] よくわからんけど$(this)がid知ってるんじゃないの?
108 名前:Name_Not_Found [2009/04/17(金) 14:03:54 ID:4ZWfjgC0] >>107 ありがとうございますー!そんな感じでした。 自己解決しました、ご迷惑かけました
109 名前:Name_Not_Found mailto:sage [2009/04/17(金) 17:00:25 ID:???] >>103 15年前ならそれでも良かったんだろうな
110 名前:Name_Not_Found mailto:sage [2009/04/17(金) 17:26:32 ID:???] ジャバSCRIPTは ホームページに「現在の時刻は10:31分です」と表示したり プラウザーのステータスバーに 「☆★☆ よしおのHPへようこそ!\(^o^)/ ☆★☆」 という文字列を流したりして ホームページを豪華に見せる技術だよ!(*^_^*)
111 名前:Name_Not_Found mailto:sage [2009/04/17(金) 17:27:27 ID:???] >>110 よしお乙
112 名前:Name_Not_Found mailto:sage [2009/04/17(金) 18:08:33 ID:???] >>104 がいいたとえだと思う 最初は本当にそういうとこから始めるといい
113 名前:Name_Not_Found mailto:sage [2009/04/17(金) 18:13:21 ID:???] >>109 15年前って1994年、JavaScriptが生まれる前だよ :-)
114 名前:Name_Not_Found mailto:sage [2009/04/17(金) 18:24:51 ID:???] Windows3.1時代か あのころPC持ってたら今頃スーパーハカーだったのに
115 名前:Name_Not_Found mailto:sage [2009/04/17(金) 18:28:48 ID:???] 正直ハッカーって言っても大したことないよ
116 名前:Name_Not_Found mailto:sage [2009/04/18(土) 00:53:45 ID:???] マジレスすると、各種フレームワークのサイトにあるデモを見て、 JavaScriptでは何が出来るのかを感じ、興味を持った機能のコードを読む事から始めた方が良さそうだけど。 相変わらず北米仕様(ブログ偏重)のGoogleだと、 微妙過ぎるブログや、ECMAScript3rd以前の化石サイトがかなりヒットするので、 正直百害あって5利有るくらい。
117 名前:Name_Not_Found mailto:sage [2009/04/18(土) 04:14:55 ID:???] >>116 検索ワードが悪いんだろ
118 名前:Name_Not_Found mailto:sage [2009/04/18(土) 08:29:36 ID:???] var x = function(){ } と function x(){ } は動作に何か違いが出るんでしょうか? 以下のようなコードを作ったときにa();もb();も動かなかったので、スコープの違いはないようです。 function container(){ var a = function(){ } function b(){ } } a(); b();
119 名前:Name_Not_Found mailto:sage [2009/04/18(土) 08:59:37 ID:???] a(); //b(); error function a() {} var b = function() {};
120 名前:Name_Not_Found [2009/04/18(土) 11:50:07 ID:rm1YcpHg] naoシフトってなんですか?
121 名前:Name_Not_Found mailto:sage [2009/04/18(土) 11:59:14 ID:???] >>118 つ ;
122 名前:Name_Not_Found mailto:sage [2009/04/18(土) 12:40:09 ID:???] >>118 細かい違いは割とあるけど、 FunctionDeclarationはすぐに使えて、 FunctionExpressionは実行されるまで呼び出せないってのが大きく違う try { FunctionExpression(1); } catch (e){alert(e);} try { FunctionDeclaration(); } catch (e){alert(e);} function FunctionDeclaration(){ alert(arguments.callee.name); } var FunctionExpression = function(c){ alert(c + ':' + 'Expression::' + arguments.callee.name); }; FunctionExpression(2);
123 名前:Name_Not_Found mailto:sage [2009/04/18(土) 13:41:48 ID:???] >>120 今日もまた一つ無駄知識が増えた。
124 名前:Name_Not_Found mailto:sage [2009/04/18(土) 14:04:20 ID:???] >>122 そんなことは、>>119 で書いてくれてあるじゃん。
125 名前:Name_Not_Found mailto:sage [2009/04/18(土) 14:22:50 ID:???] function f(x){ return g; function g(){ return x * 2 } } f(1)(); なんかキモイけどこんなんでも動くんだなw
126 名前:Name_Not_Found mailto:sage [2009/04/18(土) 14:26:44 ID:???] 普通の closure じゃん。
127 名前:Name_Not_Found mailto:sage [2009/04/18(土) 14:31:36 ID:???] container(); function container() { b(); a(); var a = function() { alert("hoge"); }; function b() { alert("moge"); } }
128 名前:Name_Not_Found mailto:sage [2009/04/18(土) 14:33:06 ID:???] クロージャを使いこなすのは一苦労じゃ
129 名前:Name_Not_Found mailto:sage [2009/04/18(土) 14:39:38 ID:???] >>128
130 名前:118 mailto:sage [2009/04/18(土) 15:39:44 ID:???] 皆さんどうもありがとうございました。 >>122 さんのレスに参考になりそうなキーワードがたくさん入っているので これをヒントにもっと調べてみます。