私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.78 +

みんなの評価 :
レスフィルター : (試験中)
ページ内の幾つか(=連続してない)の要素<a>のonclickにある関数を書いておいて、
クリックでその関数が実行されたら、その要素の前や後の要素を特定って簡単ではないですよね?
<a onclick="test('~~要素ごとに違う~~')"
現在考えているのは、document.getelementsByTagName('a')からString(a[i].onclick).match(/test\(/)が真である要素の配列をつくって、
onclick="test('~~の~~が最後に実行されたものと同じやつを探して、±1するというのなんですが、
これ以上にスマートなやり方は無いでしょうか?
クリックでその関数が実行されたら、その要素の前や後の要素を特定って簡単ではないですよね?
<a onclick="test('~~要素ごとに違う~~')"
現在考えているのは、document.getelementsByTagName('a')からString(a[i].onclick).match(/test\(/)が真である要素の配列をつくって、
onclick="test('~~の~~が最後に実行されたものと同じやつを探して、±1するというのなんですが、
これ以上にスマートなやり方は無いでしょうか?
>>701
何がやりたいのかよくわからないな
> クリックでその関数が実行されたら、その要素の前や後の要素を特定って簡単ではないですよね?
previousSiblingとかnextSiblingで辿ってくのじゃだめなの?
何がやりたいのかよくわからないな
> クリックでその関数が実行されたら、その要素の前や後の要素を特定って簡単ではないですよね?
previousSiblingとかnextSiblingで辿ってくのじゃだめなの?
>>702
Lightboxみたいなのを自作しているんですが、前の画像次の画像へ移動するには前後のonclick="testを探さないといけなくて、
<a>の階層はバラバラなので、getElementsByTagName('a')がまず思いつきました。
Lightboxみたいなのを自作しているんですが、前の画像次の画像へ移動するには前後のonclick="testを探さないといけなくて、
<a>の階層はバラバラなので、getElementsByTagName('a')がまず思いつきました。
>>696
document.bodyはDOM Level 2 HTMLで定義されてる
レガシーである、という記述はどこにもない
http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-26809268
無論、もともとは独自拡張から始まったものではあるけれどね
document.bodyはDOM Level 2 HTMLで定義されてる
レガシーである、という記述はどこにもない
http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-26809268
無論、もともとは独自拡張から始まったものではあるけれどね
メモリーリークってIE7以降のブラウザにも影響あるのかな?
そろそろIE6切ろうと思うんだが
そろそろIE6切ろうと思うんだが
>>706
ああ、誤解を与えたかもしれないが
DOM-HTMLがそもそもレガシーから始まっており
Window、HTMLDocumentそのものがレガシーの正当化に過ぎないという意味で
「レガシー」を使った
事実XHTML5でHTMLDocumentは使えないようになっただろ
ああ、誤解を与えたかもしれないが
DOM-HTMLがそもそもレガシーから始まっており
Window、HTMLDocumentそのものがレガシーの正当化に過ぎないという意味で
「レガシー」を使った
事実XHTML5でHTMLDocumentは使えないようになっただろ
>>704,705
前後はそうですね、
オミトロンで全ページ対象に導入しているuserscriptのようなものです。
素直にidつけて回してみます。。。とcss3セレクタでうまい取得方法がありました。
a[onclick^=test]
前後はそうですね、
オミトロンで全ページ対象に導入しているuserscriptのようなものです。
素直にidつけて回してみます。。。とcss3セレクタでうまい取得方法がありました。
a[onclick^=test]
いろいろ途中で送信してしまった。
前後はそうですね、→jQuery('a[onclick^=test]')[4].onclick()の状況なら
jQuery('a[onclick^=test]')[3]とjQuery('a[onclick^=test]')[5]ってことです。
セレクタで取得しても最後のイベントの発生した要素の番号がわからないので
また別にいじらないといけないですね。orz
前後はそうですね、→jQuery('a[onclick^=test]')[4].onclick()の状況なら
jQuery('a[onclick^=test]')[3]とjQuery('a[onclick^=test]')[5]ってことです。
セレクタで取得しても最後のイベントの発生した要素の番号がわからないので
また別にいじらないといけないですね。orz
>>699
その流れで、このスレでエライ怒られたことがある。
ちょうどPrototype.jsが話題だった頃。
質問した時に、要素にあれこれメソッドをくっつける作りになってて、
「そんなことしたら、他の人がいじろうとしたときに云々…」と。
おまえら俺のサイトでなにする気だよ!と思った。
その流れで、このスレでエライ怒られたことがある。
ちょうどPrototype.jsが話題だった頃。
質問した時に、要素にあれこれメソッドをくっつける作りになってて、
「そんなことしたら、他の人がいじろうとしたときに云々…」と。
おまえら俺のサイトでなにする気だよ!と思った。
>jQuery('a[onclick^=test]')[4].onclick()
何これjQueryの文法?見た感じべき乗でもなさそうだしきんもいのう
何これjQueryの文法?見た感じべき乗でもなさそうだしきんもいのう
>>708
> 事実XHTML5でHTMLDocumentは使えないようになっただろ
HTMLDocumentがobsoleteになったっていう記述はみあたらないんだが・・・
http://www.google.co.jp/search?q=htmldocument%20site%3Awww.whatwg.org/specs/web-apps/current-work/multipage/
XHTML5として利用する場合の記述は特になさげ
http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#documents-in-the-dom
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-xhtml-syntax.html
> 事実XHTML5でHTMLDocumentは使えないようになっただろ
HTMLDocumentがobsoleteになったっていう記述はみあたらないんだが・・・
http://www.google.co.jp/search?q=htmldocument%20site%3Awww.whatwg.org/specs/web-apps/current-work/multipage/
XHTML5として利用する場合の記述は特になさげ
http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#documents-in-the-dom
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-xhtml-syntax.html
^を実装するとしたらそれは演算子として扱うようにするのがたいていの開発者思想
ただJavaScriptにそれは通用しない
ただJavaScriptにそれは通用しない
>>718
悪いが、鬱陶しいから確証がないならいちいちリンク挙げんな
俺もだいたい目を通しているんだから、見落としが明らかなときだけ挙げてくれ
とは言え、今回は明らかに俺の誤りだったから>>708は撤回する
XHTML5でdocument.writeが使えないということを
HTMLDocumentをサポートしないと脳内変換してしまっていた
すまんかった
とにかく、俺が>>696で言いたかったのは
「レガシーな」HTMLDocument::bodyを前提にしておきながら
「レガシーな」HTMLScriptElement::srcを避けるのは無意味であり
スタイルとして一貫してなく不格好だということ
ここで俺は「レガシー」を後方互換性確保の意味合いが強いという
それだけの意味合いで用いている
根拠はDOM2-HTMLの1.1-1.3節、DOM-FAQあたり
規定で定義されればレガシーでない、という立場なら
今やdocument.allすらレガシーではなくなった
悪いが、鬱陶しいから確証がないならいちいちリンク挙げんな
俺もだいたい目を通しているんだから、見落としが明らかなときだけ挙げてくれ
とは言え、今回は明らかに俺の誤りだったから>>708は撤回する
XHTML5でdocument.writeが使えないということを
HTMLDocumentをサポートしないと脳内変換してしまっていた
すまんかった
とにかく、俺が>>696で言いたかったのは
「レガシーな」HTMLDocument::bodyを前提にしておきながら
「レガシーな」HTMLScriptElement::srcを避けるのは無意味であり
スタイルとして一貫してなく不格好だということ
ここで俺は「レガシー」を後方互換性確保の意味合いが強いという
それだけの意味合いで用いている
根拠はDOM2-HTMLの1.1-1.3節、DOM-FAQあたり
規定で定義されればレガシーでない、という立場なら
今やdocument.allすらレガシーではなくなった
>>718, 722
なんだか濃密な議論サンクス
深い意味もなくsetAttribute使ってたけど、
不快感を感じる人もいるんだね。
俺としては、属性値の設定はsetAttributeで統一したほうが読みやすい
って感じがあるな。慣れちゃったからかも。
ところでdocument.getElementsByTagName('body')[0]って、
ブラウザ互換的に安全に使えたっけ?
なんだか濃密な議論サンクス
深い意味もなくsetAttribute使ってたけど、
不快感を感じる人もいるんだね。
俺としては、属性値の設定はsetAttributeで統一したほうが読みやすい
って感じがあるな。慣れちゃったからかも。
ところでdocument.getElementsByTagName('body')[0]って、
ブラウザ互換的に安全に使えたっけ?
>>722
吃驚したわー
吃驚したわー
http://nanto.asablo.jp/blog/2005/10/29/123294
を読むと setAttribute を使えなくなって、IEが嫌いになる
を読むと setAttribute を使えなくなって、IEが嫌いになる
そのバグ>>4に書いてあるじゃん
>>726
setAttributeは値を必ず文字列として扱う
たとえばinput.setAttribute('checked', true)は<input checked="true">にする
もちろんこれは誤りでchecked="checked"が正しい
だが最近はブラウザが補正してくれているから気付かない奴が多い
setAttributeは属性の意味を考慮せず言われたままセットするだけだから
HTMLの文法が頭に入ってなきゃきちんと使えないんだよ
DOMをHTMLに戻して検証にかければ、当たり前だがエラーになる
一方、DOM-HTMLのはプロパティの種類に応じて
数値・ブール値として、あるいは絶対URIに適切に変換してくれる
いろんな情報がごっちゃになって結局間違えるくらいなら
setAttributeなんか使わない方が無難だろうよ
IEバグで言えば、ごく一時期setAttribute('class')||setAttribute('className')なんて
馬鹿げた書き方が流行ったんだぜ
IEは酷いが、こんなのに疑問すら持たず喜ぶアホどもも大概だ
setAttributeは値を必ず文字列として扱う
たとえばinput.setAttribute('checked', true)は<input checked="true">にする
もちろんこれは誤りでchecked="checked"が正しい
だが最近はブラウザが補正してくれているから気付かない奴が多い
setAttributeは属性の意味を考慮せず言われたままセットするだけだから
HTMLの文法が頭に入ってなきゃきちんと使えないんだよ
DOMをHTMLに戻して検証にかければ、当たり前だがエラーになる
一方、DOM-HTMLのはプロパティの種類に応じて
数値・ブール値として、あるいは絶対URIに適切に変換してくれる
いろんな情報がごっちゃになって結局間違えるくらいなら
setAttributeなんか使わない方が無難だろうよ
IEバグで言えば、ごく一時期setAttribute('class')||setAttribute('className')なんて
馬鹿げた書き方が流行ったんだぜ
IEは酷いが、こんなのに疑問すら持たず喜ぶアホどもも大概だ
> HTMLの文法が頭に入ってなきゃきちんと使えないんだよ
考え方の相違かもしれんが、HTMLを理解してる人には、
むしろsetAttributeのほうが自然で使いやすいと思う
> 数値・ブール値として、あるいは絶対URIに適切に変換してくれる
こういう変換は、コードに不透明感が出るというか
考え方の相違かもしれんが、HTMLを理解してる人には、
むしろsetAttributeのほうが自然で使いやすいと思う
> 数値・ブール値として、あるいは絶対URIに適切に変換してくれる
こういう変換は、コードに不透明感が出るというか
> checked="checked"が正しい
HTML 4.01 Transitionalだとこういう書き方はしないし
HTMLの種類によって正しいかどうかは違ってくるかと
HTML 4.01 Transitionalだとこういう書き方はしないし
HTMLの種類によって正しいかどうかは違ってくるかと
それじゃ納得行かないから揉めてんだろw
主に>>696さんが
主に>>696さんが
var Foo = function(){};
Foo.prototype = {};
と、
var Foo = {};
についてですが、
前者の中身にアクセスするにはFooをインスタンス化しないといけない。
後者は中身をスタティックに呼ぶことができる。
という認識であっていますか?
Foo.prototype = {};
と、
var Foo = {};
についてですが、
前者の中身にアクセスするにはFooをインスタンス化しないといけない。
後者は中身をスタティックに呼ぶことができる。
という認識であっていますか?
最近、ホームページを作っています
そろそろJavaScriptを使ってみようと思っているのですが中学生でも始められますか?
あと、家にパソコンないんですけど携帯で作ってる人もいるみたいなのですが大丈夫ですか?
そろそろJavaScriptを使ってみようと思っているのですが中学生でも始められますか?
あと、家にパソコンないんですけど携帯で作ってる人もいるみたいなのですが大丈夫ですか?



類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.74 + (1001) - [97%] - 2009/12/1 6:08 ○
- + JavaScript の質問用スレッド vol.75 + (1001) - [97%] - 2010/1/23 1:07 ○
- + JavaScript の質問用スレッド vol.76 + (1001) - [97%] - 2010/3/10 4:02
- + JavaScript の質問用スレッド vol.77 + (1001) - [97%] - 2010/5/8 19:06
- + JavaScript の質問用スレッド vol.79 + (1001) - [97%] - 2010/9/11 6:50
- + JavaScript の質問用スレッド vol.88 + (1001) - [97%] - 2011/7/20 7:03
- + JavaScript の質問用スレッド vol.98 + (1001) - [97%] - 2012/4/9 14:46
- + JavaScript の質問用スレッド vol.138 + (1004) - [95%] - 2019/4/20 23:45
- + JavaScript の質問用スレッド vol.128 + (1001) - [95%] - 2016/2/26 6:45
- + JavaScript の質問用スレッド vol.108 + (1001) - [95%] - 2013/9/21 15:16
- + JavaScript の質問用スレッド vol.118 + (1002) - [95%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.94 + (1001) - [95%] - 2012/1/8 15:46
- + JavaScript の質問用スレッド vol.93 + (1001) - [95%] - 2012/1/1 4:46
- + JavaScript の質問用スレッド vol.96 + (1001) - [95%] - 2012/1/28 23:01
- + JavaScript の質問用スレッド vol.95 + (1001) - [95%] - 2012/1/17 4:16
- + JavaScript の質問用スレッド vol.97 + (1001) - [95%] - 2012/3/1 3:31
- + JavaScript の質問用スレッド vol.99 + (1001) - [95%] - 2012/5/7 4:32
トップメニューへ / →のくす牧場書庫について