JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-4のテンプレを読んだ上で質問してください。
■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
(ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。
(4) 常に自発的に調べる心構えを持ってください。
具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
※必ず「問題の事象が再現されること」を確認してください。
必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合は http://validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。
(9) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。
前スレ
+ JavaScript の質問用スレッド vol.124 + [転載禁止](c)2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1427008785/
(ライブラリ禁止条項は、多数の意見によって廃止されました。ライブラリの質問もOKです)
探検
+ JavaScript の質問用スレッド vol.125 +
■ このスレッドは過去ログ倉庫に格納されています
2018/02/18(日) 16:48:01.14ID:F2O3xW/S
339デフォルトの名無しさん
2018/04/07(土) 12:14:34.26ID:k7L1I/bs >>312
><input type="text"></input>で入力が内部textNodeになれば、それが出来るだろ。
input要素はtextだけじゃなくて、dateとかrangeとかいろいろある
これらはHTMLに直接記述したり、JSから取り扱うときにはDOMStringにシリアライズされるけれども、
その意味するものがテキストとは限らないし、UAでの表示・入力方式もカレンダーなど、テキスト以外の形態を取るかもしれない。
つまり、input要素のvalueはDOMStringではあってもTextであるとは限らない。
type="text"だけ例外的にvalueではなくてcontentのtextNodeで扱うのは統合性の観点から問題があるし、
JSで扱うときにDOMStringになるからといって、テキストでないものをUAでの取り扱いも無視してtextNodeとしてcontentに入れてしまうのは
HTMLやそのDOMの基本構造から外れてしまい、これも統合性の観点から大問題。
>Webの場合はこの辺の「統合的」な視点が全く欠けており
統合的な観点が欠けているのはどなたでしょうかね。
><input type="text"></input>で入力が内部textNodeになれば、それが出来るだろ。
input要素はtextだけじゃなくて、dateとかrangeとかいろいろある
これらはHTMLに直接記述したり、JSから取り扱うときにはDOMStringにシリアライズされるけれども、
その意味するものがテキストとは限らないし、UAでの表示・入力方式もカレンダーなど、テキスト以外の形態を取るかもしれない。
つまり、input要素のvalueはDOMStringではあってもTextであるとは限らない。
type="text"だけ例外的にvalueではなくてcontentのtextNodeで扱うのは統合性の観点から問題があるし、
JSで扱うときにDOMStringになるからといって、テキストでないものをUAでの取り扱いも無視してtextNodeとしてcontentに入れてしまうのは
HTMLやそのDOMの基本構造から外れてしまい、これも統合性の観点から大問題。
>Webの場合はこの辺の「統合的」な視点が全く欠けており
統合的な観点が欠けているのはどなたでしょうかね。
340デフォルトの名無しさん
2018/04/07(土) 12:25:06.56ID:C4tJt4pN >>338
> ReactやVunみたいに分離や仮想DOMが普及してきてる
jQueryの73.4%に比べれば1%以下では普及してるとは言えないです
https://w3techs.com/technologies/overview/javascript_library/all
> ReactやVunみたいに分離や仮想DOMが普及してきてる
jQueryの73.4%に比べれば1%以下では普及してるとは言えないです
https://w3techs.com/technologies/overview/javascript_library/all
341デフォルトの名無しさん
2018/04/07(土) 12:51:18.67ID:brs8+2uS そんなことはない
例えば現代の日本人の0.5%に使われてる着物というものがあったら
大ヒット大普及と言えるだろう
例えば現代の日本人の0.5%に使われてる着物というものがあったら
大ヒット大普及と言えるだろう
342デフォルトの名無しさん
2018/04/07(土) 12:59:31.49ID:Igh7VnfA >>340
無意味な使用率とかを見ちゃうようではなぁ
自分で、
>お前らが腕前をこれらに依拠しているのなら、お前らの存在価値は自然と目減りしていく。
とか言っちゃうくせに新しい技術への考慮をしないとは
事実jQuery使ったサイトは多いけど、すでにあるものの修正か、使いたいライブラリがあるか、シンタックスシュガーとして楽するみたいな使い方ばっかりだな
標準APIとCSS,JavaScriptの機能拡充で使う必要性はかなり薄れた
無意味な使用率とかを見ちゃうようではなぁ
自分で、
>お前らが腕前をこれらに依拠しているのなら、お前らの存在価値は自然と目減りしていく。
とか言っちゃうくせに新しい技術への考慮をしないとは
事実jQuery使ったサイトは多いけど、すでにあるものの修正か、使いたいライブラリがあるか、シンタックスシュガーとして楽するみたいな使い方ばっかりだな
標準APIとCSS,JavaScriptの機能拡充で使う必要性はかなり薄れた
343デフォルトの名無しさん
2018/04/07(土) 13:00:44.25ID:k7L1I/bs 用途も使われてきた期間も違うから比べるもんでもないけどね
344デフォルトの名無しさん
2018/04/07(土) 13:01:53.79ID:/UNMIPro >>342
それ別人やぞ
それ別人やぞ
345デフォルトの名無しさん
2018/04/07(土) 13:10:00.78ID:C4tJt4pN346デフォルトの名無しさん
2018/04/07(土) 13:12:20.89ID:C4tJt4pN >>342
> 事実jQuery使ったサイトは多いけど、すでにあるものの修正か、使いたいライブラリがあるか、シンタックスシュガーとして楽するみたいな使い方ばっかりだな
因果関係が逆になってますね。
楽するみたいな使い方ぐらいしかする必要がないからjQueryを使うんですよ
ほとんどはReactとかAngular使ってデスクトップアプリみたいなものを
作りたいなんて思ってないんです。
企業サイトを楽に作りたいだけです。
需要があって供給が決まります。
> 事実jQuery使ったサイトは多いけど、すでにあるものの修正か、使いたいライブラリがあるか、シンタックスシュガーとして楽するみたいな使い方ばっかりだな
因果関係が逆になってますね。
楽するみたいな使い方ぐらいしかする必要がないからjQueryを使うんですよ
ほとんどはReactとかAngular使ってデスクトップアプリみたいなものを
作りたいなんて思ってないんです。
企業サイトを楽に作りたいだけです。
需要があって供給が決まります。
347デフォルトの名無しさん
2018/04/07(土) 13:23:15.13ID:VB78bykL なぜ普及率云々の話になってるんだ?
普及率なんて使うときの目安にもならんのに
普及率なんて使うときの目安にもならんのに
348デフォルトの名無しさん
2018/04/07(土) 13:26:09.73ID:C4tJt4pN 普及率を見て何かを決めるんじゃなくて、
何かを見て決めて実行した結果が、普及率として形になるんだよ。
結果を言ってるだけ。目安にしろと言ってない。
何かを見て決めて実行した結果が、普及率として形になるんだよ。
結果を言ってるだけ。目安にしろと言ってない。
349デフォルトの名無しさん
2018/04/07(土) 13:27:36.70ID:VB78bykL >>339
> type="text"だけ例外的にvalueではなくてcontentのtextNodeで扱うのは統合性の観点から問題があるし、
いや、それはtextNodeではないぞ
彼も同じ勘違いをしていたようだが、彼には初心者特有の「事実と想像(思い込み)を区別できてない」ものを感じた
> type="text"だけ例外的にvalueではなくてcontentのtextNodeで扱うのは統合性の観点から問題があるし、
いや、それはtextNodeではないぞ
彼も同じ勘違いをしていたようだが、彼には初心者特有の「事実と想像(思い込み)を区別できてない」ものを感じた
350デフォルトの名無しさん
2018/04/07(土) 13:27:52.26ID:9ZwFE3Ij >>339
> type="text"だけ例外的にvalueではなくてcontentのtextNodeで扱うのは統合性の観点から問題があるし、
これは俺の書き方が悪かったが、
俺は<input>全体が<div><span>と同格に扱える仕様であるべきだと思っている。
(今回はtpye='"text"だったから分かりやすいようにそれ限定で書いていただけ)
同様に<textarea>もだ。
そうすれば、<textarea><input>の場合だけ value にしている if 文が抜ける。
本来はこれが正しい仕様だ。valueは生の値、textContentはDOMStringだ。
というか方向は確実にこっちで、
HTMLInputElementはNodeを継承しているのだからtextContentをオーバーライドしてないことがおかしい。
これについては互換性の問題は深刻ではないので、追加(というより修正)されてもおかしくない。
お前らはここら辺の、「本来あるべき形」ってのが見えてない。
それはプログラミングで統合的に扱おうとしてないからだ。
ここら辺の、「仕様」の例外はどうやっても避けられないから、処理を分けるしかない。
それはわざわざ汚いコードを書かされる羽目になり、
「処理を分けずに書くことが出来る上級者」にとってはものすごいストレスになる。
一方、「いちいち処理を分けて書くしかできない初心者」にとっては何もなく、
ここら辺がPHPが上級者に『だけ』強烈に嫌われる理由でもある。
PHPは言語仕様自体が酷すぎて、上級者でも本当に酷いコードを書かされる羽目になる。
結果、上級者は去り、PHPは初心者の楽園となり、それはそれで楽しいのだろうが、
上級者のコード(美しいコード)がその世界に存在しないってのは、PHPerが馬鹿にとどまる理由の一つでもある。
JavaScriptは言われるほど酷くはないが、同様に、
仕様が汚いから美しいコードが存在しにくいというのはあって、
これもお前らの上達を阻害している要因ではある。
JavaScriptのスレは他言語と比べて活発で、今日でも休日なのにお前らは投稿しまくりだ。
お前らが努力をしてないってわけではないのだろうさ。
ただ、上記のように、環境が悪いから上達しにくい、ってのはあるんだよ。
だから、これらを正しく認識した上で、空回りは止めろと、俺は言ってるんだよ。
> type="text"だけ例外的にvalueではなくてcontentのtextNodeで扱うのは統合性の観点から問題があるし、
これは俺の書き方が悪かったが、
俺は<input>全体が<div><span>と同格に扱える仕様であるべきだと思っている。
(今回はtpye='"text"だったから分かりやすいようにそれ限定で書いていただけ)
同様に<textarea>もだ。
そうすれば、<textarea><input>の場合だけ value にしている if 文が抜ける。
本来はこれが正しい仕様だ。valueは生の値、textContentはDOMStringだ。
というか方向は確実にこっちで、
HTMLInputElementはNodeを継承しているのだからtextContentをオーバーライドしてないことがおかしい。
これについては互換性の問題は深刻ではないので、追加(というより修正)されてもおかしくない。
お前らはここら辺の、「本来あるべき形」ってのが見えてない。
それはプログラミングで統合的に扱おうとしてないからだ。
ここら辺の、「仕様」の例外はどうやっても避けられないから、処理を分けるしかない。
それはわざわざ汚いコードを書かされる羽目になり、
「処理を分けずに書くことが出来る上級者」にとってはものすごいストレスになる。
一方、「いちいち処理を分けて書くしかできない初心者」にとっては何もなく、
ここら辺がPHPが上級者に『だけ』強烈に嫌われる理由でもある。
PHPは言語仕様自体が酷すぎて、上級者でも本当に酷いコードを書かされる羽目になる。
結果、上級者は去り、PHPは初心者の楽園となり、それはそれで楽しいのだろうが、
上級者のコード(美しいコード)がその世界に存在しないってのは、PHPerが馬鹿にとどまる理由の一つでもある。
JavaScriptは言われるほど酷くはないが、同様に、
仕様が汚いから美しいコードが存在しにくいというのはあって、
これもお前らの上達を阻害している要因ではある。
JavaScriptのスレは他言語と比べて活発で、今日でも休日なのにお前らは投稿しまくりだ。
お前らが努力をしてないってわけではないのだろうさ。
ただ、上記のように、環境が悪いから上達しにくい、ってのはあるんだよ。
だから、これらを正しく認識した上で、空回りは止めろと、俺は言ってるんだよ。
351デフォルトの名無しさん
2018/04/07(土) 13:29:29.94ID:VB78bykL352デフォルトの名無しさん
2018/04/07(土) 13:32:48.21ID:C4tJt4pN > これは俺の書き方が悪かったが、
> 俺は<input>全体が<div><span>と同格に扱える仕様であるべきだと思っている。
知らんがな。お前が思ってたからってだから何だよ?
理由の一つぐらいいえ。
俺なら言えるぞ、inputはdivやspanと同格に扱えるものではない。
なぜならdivやspanは出力するためのものだ。
intputは逆に入力するためのものだ。
見やすさと入力のしやすさは違う。出力は製作者側がコントロールできるが
入力は何を入力するかは決められない。どうやって入力するかも決められない
本質的にまったく違うものなんだから、お前の主張は根本から間違いだってわかる
> 俺は<input>全体が<div><span>と同格に扱える仕様であるべきだと思っている。
知らんがな。お前が思ってたからってだから何だよ?
理由の一つぐらいいえ。
俺なら言えるぞ、inputはdivやspanと同格に扱えるものではない。
なぜならdivやspanは出力するためのものだ。
intputは逆に入力するためのものだ。
見やすさと入力のしやすさは違う。出力は製作者側がコントロールできるが
入力は何を入力するかは決められない。どうやって入力するかも決められない
本質的にまったく違うものなんだから、お前の主張は根本から間違いだってわかる
353デフォルトの名無しさん
2018/04/07(土) 13:33:31.08ID:C4tJt4pN354デフォルトの名無しさん
2018/04/07(土) 13:47:34.83ID:VB78bykL355デフォルトの名無しさん
2018/04/07(土) 13:47:40.70ID:9ZwFE3Ij >>352
お前、、、レスする前にまずは全文読めよ。
ただまあ、
> 俺なら言えるぞ、inputはdivやspanと同格に扱えるものではない。
> なぜならdivやspanは出力するためのものだ。
> intputは逆に入力するためのものだ。
これは「オブジェクト指向では」間違いだということになっている。
とはいえ見た限り、DOMのオブジェクト指向は後付で、ややちぐはぐなのも事実だが。
君が非オブジェクト指向派で、
> 本質的にまったく違う
と思うのならそれはそれでいいが、
おそらくDOMについてはオブジェクト指向で取り扱う方が正しい。
おそらく君はそれ以前で、「オブジェクト指向」を理解できていないのだと思う。
これについては勉強した方がいい。
ただまあ、オブジェクト指向自体の勉強はやややりにくいのも事実だが…。
お前、、、レスする前にまずは全文読めよ。
ただまあ、
> 俺なら言えるぞ、inputはdivやspanと同格に扱えるものではない。
> なぜならdivやspanは出力するためのものだ。
> intputは逆に入力するためのものだ。
これは「オブジェクト指向では」間違いだということになっている。
とはいえ見た限り、DOMのオブジェクト指向は後付で、ややちぐはぐなのも事実だが。
君が非オブジェクト指向派で、
> 本質的にまったく違う
と思うのならそれはそれでいいが、
おそらくDOMについてはオブジェクト指向で取り扱う方が正しい。
おそらく君はそれ以前で、「オブジェクト指向」を理解できていないのだと思う。
これについては勉強した方がいい。
ただまあ、オブジェクト指向自体の勉強はやややりにくいのも事実だが…。
356デフォルトの名無しさん
2018/04/07(土) 13:49:14.74ID:VB78bykL357デフォルトの名無しさん
2018/04/07(土) 13:58:19.63ID:C4tJt4pN > おそらくDOMについてはオブジェクト指向で取り扱う方が正しい。
知ってる。ってか常識
DOM とは Document Object Model の略
なんでお前そんなレベルの話してんの?
知ってる。ってか常識
DOM とは Document Object Model の略
なんでお前そんなレベルの話してんの?
358デフォルトの名無しさん
2018/04/07(土) 13:59:10.47ID:C4tJt4pN >>355
> なぜならdivやspanは出力するためのものだ。
> intputは逆に入力するためのものだ。
> これは「オブジェクト指向では」間違いだということになっている。
なってない。というか、なってるという証拠示せよ
> なぜならdivやspanは出力するためのものだ。
> intputは逆に入力するためのものだ。
> これは「オブジェクト指向では」間違いだということになっている。
なってない。というか、なってるという証拠示せよ
359デフォルトの名無しさん
2018/04/07(土) 14:02:32.70ID:9ZwFE3Ij360デフォルトの名無しさん
2018/04/07(土) 14:03:50.69ID:k7L1I/bs >>350
>本来はこれが正しい仕様だ。valueは生の値、textContentはDOMStringだ。
それは思いっきり間違った仕様だし、典型的なアンチパターンです。
valueから一意に計算されるものをvalueと別に保持するべきではないし、
「とある属性の値をDOMStringに変換したもの」は要素の「内容(Content)」ではないので、
これをtextContentで返すべきでもありません。
textContentは要素の"内容"であるべきで、inputだけ例外として内容でないものをContentとしては
HTMLというもの全体の統合性が失われる。
目先の処理の統合性のために、データ構造そのものの統合性を失わせるのでは本末転倒。
HTMLにおいて"内容"(Content)というのは特別な意味を持つ専門用語なので、
そういった基本を学んでからDOM APIに文句をつけることをおすすめします。
>HTMLInputElementはNodeを継承しているのだからtextContentをオーバーライドしてないことがおかしい。
オーバーライドしてますよ。空要素(内容を持たない要素)なので常に空文字列が返ります。
【HTMLはJavaScriptのためにあるものではないので】
JavaScriptから扱うときの処理を数行減らすためだけに、データ構造の整合性を失わせることはできません。
>本来はこれが正しい仕様だ。valueは生の値、textContentはDOMStringだ。
それは思いっきり間違った仕様だし、典型的なアンチパターンです。
valueから一意に計算されるものをvalueと別に保持するべきではないし、
「とある属性の値をDOMStringに変換したもの」は要素の「内容(Content)」ではないので、
これをtextContentで返すべきでもありません。
textContentは要素の"内容"であるべきで、inputだけ例外として内容でないものをContentとしては
HTMLというもの全体の統合性が失われる。
目先の処理の統合性のために、データ構造そのものの統合性を失わせるのでは本末転倒。
HTMLにおいて"内容"(Content)というのは特別な意味を持つ専門用語なので、
そういった基本を学んでからDOM APIに文句をつけることをおすすめします。
>HTMLInputElementはNodeを継承しているのだからtextContentをオーバーライドしてないことがおかしい。
オーバーライドしてますよ。空要素(内容を持たない要素)なので常に空文字列が返ります。
【HTMLはJavaScriptのためにあるものではないので】
JavaScriptから扱うときの処理を数行減らすためだけに、データ構造の整合性を失わせることはできません。
361デフォルトの名無しさん
2018/04/07(土) 14:05:06.45ID:C4tJt4pN >>359
日本語を勉強しろ
日本語を勉強しろ
362デフォルトの名無しさん
2018/04/07(土) 14:24:33.89ID:9ZwFE3Ij >>360
君がそう思うのならそれはそれでいいのだが、
俺の考えだけ言っておくと、以下になる。
> inputだけ例外として内容でないものをContentとしては
inputの表示内容を textNode にしてchildNodes[0]にすれば、
Range で統合的に取り扱えるようになる。
そのときにその表示内容が textContent で取得/変更出来るのは自然だ。
だから、「inputは空要素」というのがそもそもの間違いで、
XHTMLではとりあえず終了タグ付けようとしただろ。(ポシャったが)
あれは方向はあってるんだよ。
> オーバーライドしてますよ。空要素(内容を持たない要素)なので常に空文字列が返ります
これが後付なんだよ。今の仕様を無理矢理OOPに乗せて、
オーバーライドしたことにして辻褄を合わせている。今の君の主張のようにね。
同様なのはNodeもそうだが、例えば、
https://developer.mozilla.org/ja/docs/Web/API/HTMLInputElement
で見ると、継承階層は
EventTarget <- Node <- Element <- HTMLElement <- HTMLInputElement
であり、実は addEventListenerはEventTargetのメソッドだ。
だから理屈的には textNode に対しても addEventLister できる事になり、
確かに出来るのだが、イベントには反応しない。
これも同様に、Element階層でイベントに反応するaddEventListerがオーバーライドされており、
EventTargetのaddEventListerはただの空関数です、ということは出来る。
しかし明らかに辻褄合わせだろ。間違ったOOPの使い方であってさ。
こんなのを見てOOPを学べるはずもない。教材が悪すぎる。
そりゃ ID:C4tJt4pN が理解できてないのも一理あるだろうよ。
君がそう思うのならそれはそれでいいのだが、
俺の考えだけ言っておくと、以下になる。
> inputだけ例外として内容でないものをContentとしては
inputの表示内容を textNode にしてchildNodes[0]にすれば、
Range で統合的に取り扱えるようになる。
そのときにその表示内容が textContent で取得/変更出来るのは自然だ。
だから、「inputは空要素」というのがそもそもの間違いで、
XHTMLではとりあえず終了タグ付けようとしただろ。(ポシャったが)
あれは方向はあってるんだよ。
> オーバーライドしてますよ。空要素(内容を持たない要素)なので常に空文字列が返ります
これが後付なんだよ。今の仕様を無理矢理OOPに乗せて、
オーバーライドしたことにして辻褄を合わせている。今の君の主張のようにね。
同様なのはNodeもそうだが、例えば、
https://developer.mozilla.org/ja/docs/Web/API/HTMLInputElement
で見ると、継承階層は
EventTarget <- Node <- Element <- HTMLElement <- HTMLInputElement
であり、実は addEventListenerはEventTargetのメソッドだ。
だから理屈的には textNode に対しても addEventLister できる事になり、
確かに出来るのだが、イベントには反応しない。
これも同様に、Element階層でイベントに反応するaddEventListerがオーバーライドされており、
EventTargetのaddEventListerはただの空関数です、ということは出来る。
しかし明らかに辻褄合わせだろ。間違ったOOPの使い方であってさ。
こんなのを見てOOPを学べるはずもない。教材が悪すぎる。
そりゃ ID:C4tJt4pN が理解できてないのも一理あるだろうよ。
363デフォルトの名無しさん
2018/04/07(土) 14:32:37.51ID:C4tJt4pN > inputの表示内容を textNode にしてchildNodes[0]にすれば、
> Range で統合的に取り扱えるようになる。
それは悪いやり方ですね。
textNode ならtextNodeのメソッドを持っていなければいけないので、
つまり、inputの表示内容の、nextSiblingやparentElementってなんでしょうって
話になりますね。
> Range で統合的に取り扱えるようになる。
それは悪いやり方ですね。
textNode ならtextNodeのメソッドを持っていなければいけないので、
つまり、inputの表示内容の、nextSiblingやparentElementってなんでしょうって
話になりますね。
364デフォルトの名無しさん
2018/04/07(土) 14:34:56.87ID:C4tJt4pN >>362
> こんなのを見てOOPを学べるはずもない。教材が悪すぎる。
お前の頭が悪すぎるだけだよw
1. a は b である!(お前の間違った考え)
2. しかしにbはaと考えると問題が有る(間違った前提だからそうなる)
3. よって、aはbであるDOMはクソ(そもそもaがbであると言い出したのはお前)
まあ、こういう論理してますからねw
> こんなのを見てOOPを学べるはずもない。教材が悪すぎる。
お前の頭が悪すぎるだけだよw
1. a は b である!(お前の間違った考え)
2. しかしにbはaと考えると問題が有る(間違った前提だからそうなる)
3. よって、aはbであるDOMはクソ(そもそもaがbであると言い出したのはお前)
まあ、こういう論理してますからねw
365デフォルトの名無しさん
2018/04/07(土) 14:37:37.19ID:9ZwFE3Ij366デフォルトの名無しさん
2018/04/07(土) 14:38:01.23ID:k7L1I/bs >>362
>inputの表示内容を textNode にしてchildNodes[0]にすれば、
>Range で統合的に取り扱えるようになる。
繰り返しますが、HTMLはJavaScriptのための(ry
それからこれも繰り返しますが、【input要素の表示内容はテキストとは限らないので】、textNodeにはできません。
>だから、「inputは空要素」というのがそもそもの間違いで、
<input type="color" value="#808040">を
<input type="color">#808040</input>と書けというのは明らかに不条理ですよ
2018-04-07というのは便宜上このようにシリアライズしているだけであって、"#808040"というテキストを表しているわけではないし、
UAで表示されるのもテキストとは限りません。
実際、Windows+ChromeではHTMLに直書きしたり、JavaScriptで読み取る際にこそシリアライズされた文字列を使いますが、
ユーザーにはただ色そのものが表示されるだけですし、入力時にもこのシリアライズ文字列は使われなません。
>そのときにその表示内容が textContent で取得/変更出来るのは自然だ。
input要素がテキストを表示するとは限らないので、textContentで表示内容は取れません。
表示内容は画像かもしれないし、カレンダーかもしれないし、アナログ時計かもしれないし、ただの色かもしれない。
>inputの表示内容を textNode にしてchildNodes[0]にすれば、
>Range で統合的に取り扱えるようになる。
繰り返しますが、HTMLはJavaScriptのための(ry
それからこれも繰り返しますが、【input要素の表示内容はテキストとは限らないので】、textNodeにはできません。
>だから、「inputは空要素」というのがそもそもの間違いで、
<input type="color" value="#808040">を
<input type="color">#808040</input>と書けというのは明らかに不条理ですよ
2018-04-07というのは便宜上このようにシリアライズしているだけであって、"#808040"というテキストを表しているわけではないし、
UAで表示されるのもテキストとは限りません。
実際、Windows+ChromeではHTMLに直書きしたり、JavaScriptで読み取る際にこそシリアライズされた文字列を使いますが、
ユーザーにはただ色そのものが表示されるだけですし、入力時にもこのシリアライズ文字列は使われなません。
>そのときにその表示内容が textContent で取得/変更出来るのは自然だ。
input要素がテキストを表示するとは限らないので、textContentで表示内容は取れません。
表示内容は画像かもしれないし、カレンダーかもしれないし、アナログ時計かもしれないし、ただの色かもしれない。
367デフォルトの名無しさん
2018/04/07(土) 14:39:07.53ID:k7L1I/bs >>366
>2018-04-07というのは便宜上このようにシリアライズしているだけであって、"#808040"というテキストを表しているわけではないし
訂正
#808040というのは便宜上このようにシリアライズしているだけであって、"#808040"というテキストを表しているわけではないし
dateからもっとわかりやすいcolorに変えてからの修正ミス
>2018-04-07というのは便宜上このようにシリアライズしているだけであって、"#808040"というテキストを表しているわけではないし
訂正
#808040というのは便宜上このようにシリアライズしているだけであって、"#808040"というテキストを表しているわけではないし
dateからもっとわかりやすいcolorに変えてからの修正ミス
368デフォルトの名無しさん
2018/04/07(土) 14:39:19.08ID:C4tJt4pN TextNodeがイベントに反応しないっていうのも間違いで
現在は(おそらく)TextNodeが反応するイベントがないってだけで
過去にはありましたからね
https://stackoverflow.com/questions/4789342/textnode-addeventlistener
var textNode = document.getElementById("div").firstChild;
textNode.addEventListener("DOMCharacterDataModified", function(evt) {
alert("Text changed from '" + evt.prevValue + "' to '" + evt.newValue + "'");
}, false);
現在は(おそらく)TextNodeが反応するイベントがないってだけで
過去にはありましたからね
https://stackoverflow.com/questions/4789342/textnode-addeventlistener
var textNode = document.getElementById("div").firstChild;
textNode.addEventListener("DOMCharacterDataModified", function(evt) {
alert("Text changed from '" + evt.prevValue + "' to '" + evt.newValue + "'");
}, false);
369デフォルトの名無しさん
2018/04/07(土) 14:41:21.58ID:C4tJt4pN >>365
> parentElement は当然<input>だ。
> 特に問題ないし、自然だろ。
あっはっは、馬鹿も休み休み言え
<span><input value=1>a</span>
<span><custom value=1>a</span>
> parentElement は当然<input>だ。
> 特に問題ないし、自然だろ。
あっはっは、馬鹿も休み休み言え
<span><input value=1>a</span>
<span><custom value=1>a</span>
370デフォルトの名無しさん
2018/04/07(土) 14:42:58.26ID:C4tJt4pN HTMLの属性を要素としてみなすと、
HTMLとしての整合性が取れなくなるからね。
HTMLとしての整合性が取れなくなるからね。
371デフォルトの名無しさん
2018/04/07(土) 14:44:12.19ID:C4tJt4pN XPathとかで全てのテキストノードを消すと
inputの中身まで消えちゃうwww
inputの中身まで消えちゃうwww
372デフォルトの名無しさん
2018/04/07(土) 14:44:12.20ID:9ZwFE3Ij >>366,367
君のこだわりがよく分からないが、さらにつき合うと、
> 表示内容は画像かもしれないし、カレンダーかもしれないし、アナログ時計かもしれないし、
それならそれが入ればいいだけだろ。textならtextNodeであって。
具体的には、
<input><img></img></input>
<input><calender></calender></input>
<input><analogClock></analogClock></input>
で特段何か問題が発生するとは思えないが。
君のこだわりがよく分からないが、さらにつき合うと、
> 表示内容は画像かもしれないし、カレンダーかもしれないし、アナログ時計かもしれないし、
それならそれが入ればいいだけだろ。textならtextNodeであって。
具体的には、
<input><img></img></input>
<input><calender></calender></input>
<input><analogClock></analogClock></input>
で特段何か問題が発生するとは思えないが。
373デフォルトの名無しさん
2018/04/07(土) 14:46:38.83ID:C4tJt4pN xpathでテキストノードを選択すると
<span value=0><input value=1 data-value=2>a</span>
valueの1とaの両方にマッチするっていうのは
非直感的なクソ仕様ですよ
「input要素に限りvalueはテキストノードとして扱われます」
なんて書いてあったら、そいつは本当に人間なのか?って思うw
<span value=0><input value=1 data-value=2>a</span>
valueの1とaの両方にマッチするっていうのは
非直感的なクソ仕様ですよ
「input要素に限りvalueはテキストノードとして扱われます」
なんて書いてあったら、そいつは本当に人間なのか?って思うw
374デフォルトの名無しさん
2018/04/07(土) 14:52:13.75ID:9ZwFE3Ij >>366,367
というかな、多分君は「抽象思考」が出来ていない。
タグってのは単なる「参照」なんだよ。(プログラミング用語での参照、日本語でいう参照ポイント)
今問題なのは、<input>の中身に参照がないから捕まえられないことであって、
それは単にタグ付ければ回避できる、って話であって、
逆に、単に参照を付けただけだから、それで何か新しい問題が発生するって事もないんだよ。
HTMLが先進的だったのは、文章にタグを付けて、参照できることにしたことなんだよ。
それ以前は文章→ビットマップに変換だから、当たり判定なんて基本的に出来ないし。
だって参照がないから。
というかな、多分君は「抽象思考」が出来ていない。
タグってのは単なる「参照」なんだよ。(プログラミング用語での参照、日本語でいう参照ポイント)
今問題なのは、<input>の中身に参照がないから捕まえられないことであって、
それは単にタグ付ければ回避できる、って話であって、
逆に、単に参照を付けただけだから、それで何か新しい問題が発生するって事もないんだよ。
HTMLが先進的だったのは、文章にタグを付けて、参照できることにしたことなんだよ。
それ以前は文章→ビットマップに変換だから、当たり判定なんて基本的に出来ないし。
だって参照がないから。
375デフォルトの名無しさん
2018/04/07(土) 14:54:40.04ID:k7L1I/bs >>372
<input type="date">でカレンダーで日付を表示するのか、
2018-04-07みたいな文字列の形式で日付を表示するのかは
【ユーザーエージェント依存】なので、そんなことはできませんし、できる必要もありませんし、
マークアップ側が指定すべきものでもありません。
HTMLとして必要な情報は「これは日付の入力フォームである」という情報だけであり、
リッチクライアントならカレンダーを表示するだろうし、
テキストブラウザなら「2018年4月7日」などとテキストで表示され、数字を編集することになるだろうし、
音声ブラウザなら音声的に処理するでしょう。
あなたは全てのクライアントがいずれ完全互換になるとか思っているのかもしれませんが、
人間自体が完全互換ではないので、そうなる未来は我々の生きている間にはおそらく来ませんよ
<input type="date">でカレンダーで日付を表示するのか、
2018-04-07みたいな文字列の形式で日付を表示するのかは
【ユーザーエージェント依存】なので、そんなことはできませんし、できる必要もありませんし、
マークアップ側が指定すべきものでもありません。
HTMLとして必要な情報は「これは日付の入力フォームである」という情報だけであり、
リッチクライアントならカレンダーを表示するだろうし、
テキストブラウザなら「2018年4月7日」などとテキストで表示され、数字を編集することになるだろうし、
音声ブラウザなら音声的に処理するでしょう。
あなたは全てのクライアントがいずれ完全互換になるとか思っているのかもしれませんが、
人間自体が完全互換ではないので、そうなる未来は我々の生きている間にはおそらく来ませんよ
376デフォルトの名無しさん
2018/04/07(土) 15:01:51.14ID:9ZwFE3Ij >>375
だからそれが、「参照ポイントを付加した」だけだ、って言ったんだよ。
今<input>で出来ていることを、
<input><中身></中身></input>に変更したことによって生じる違いは、
・中身に参照を追加した
だけなんだよ。今できていることが出来なくなることはない。
君はだいぶ論点がずれている。
君は表示のことしか考えてないが、そもそも参照を付加しても表示は何も変わらない。
だから君の375での指摘は全く意味をなしてないんだ。分かるか?
だからそれが、「参照ポイントを付加した」だけだ、って言ったんだよ。
今<input>で出来ていることを、
<input><中身></中身></input>に変更したことによって生じる違いは、
・中身に参照を追加した
だけなんだよ。今できていることが出来なくなることはない。
君はだいぶ論点がずれている。
君は表示のことしか考えてないが、そもそも参照を付加しても表示は何も変わらない。
だから君の375での指摘は全く意味をなしてないんだ。分かるか?
377デフォルトの名無しさん
2018/04/07(土) 15:02:54.26ID:2Xz4c+5M 横からすまんが、踊る分かってない君に対する皆さんの誠実な突っ込みには大変勉強させていただいております。
378デフォルトの名無しさん
2018/04/07(土) 15:04:44.25ID:C4tJt4pN > 今<input>で出来ていることを、
> <input><中身></中身></input>に変更したことによって生じる違いは、
> ・中身に参照を追加した
> だけなんだよ。今できていることが出来なくなることはない。
DOMツリーを全操作して、子要素がないものを全部取得することができなくなる
> <input><中身></中身></input>に変更したことによって生じる違いは、
> ・中身に参照を追加した
> だけなんだよ。今できていることが出来なくなることはない。
DOMツリーを全操作して、子要素がないものを全部取得することができなくなる
379デフォルトの名無しさん
2018/04/07(土) 15:05:43.59ID:C4tJt4pN value要素だけを特別扱いするということは、
処理をシンプルにできなくなる
処理をシンプルにできなくなる
380デフォルトの名無しさん
2018/04/07(土) 15:05:54.25ID:9ZwFE3Ij381デフォルトの名無しさん
2018/04/07(土) 15:06:56.16ID:C4tJt4pN > OOPで言うと、参照を付加する=今privateな物をpublicにしただけなんだよ。
> だから何も変わらない。これで分かるか?
既存のpublicなメソッドに名前を変更すると
互換性が壊れる。
> だから何も変わらない。これで分かるか?
既存のpublicなメソッドに名前を変更すると
互換性が壊れる。
382デフォルトの名無しさん
2018/04/07(土) 15:07:22.32ID:C4tJt4pN 新たにメソッドを増やすときは、今までとは違った名前にすることは
互換性を保つ上であたりまえのこと。
互換性を保つ上であたりまえのこと。
383デフォルトの名無しさん
2018/04/07(土) 15:18:00.29ID:C4tJt4pN element.value で参照できるものに対して
element.childNodes[0].nodeValue でも参照できますとか
混乱のもとでしかない
オブジェクトの属性が、
オブジェクトが所有するオブジェクトの属性 と同じとか
オブジェクト指向が分かってないとしか思えない
element.childNodes[0].nodeValue でも参照できますとか
混乱のもとでしかない
オブジェクトの属性が、
オブジェクトが所有するオブジェクトの属性 と同じとか
オブジェクト指向が分かってないとしか思えない
384デフォルトの名無しさん
2018/04/07(土) 15:24:17.18ID:k7L1I/bs >>376
いやだから、<input><calender></calender></input>なんてやって
「この<input type="date">の中身はカレンダーです!」とか宣言できないし、しちゃいけないし、できちゃいけないんですよ
それを決めるのは開発者じゃなくてユーザーです
ユーザーが自分の環境で一番使いやすい入力・表示形式を選びます
あるinput要素にtextContentとして扱える内容があるのかどうか、開発側にはわからない、
ユーザーエージェント依存の部分なので、<input>は空要素でなければなりません。
>今privateな物をpublicにしただけなんだよ。
だからそこpublicにしちゃダメなんですよ、UAによって何してくるか違うところなんで
開発者はユーザーエージェントがなんであれ、統合的に処理できるようにしなきゃいけないので
あるかどうかもわからないtextContentじゃなくて、どういう形式のフォームが使われるにせよ
確実に存在する"値"のシリアライズ文字列だけをvalueプロパティから取り出して扱うわけです。
いやだから、<input><calender></calender></input>なんてやって
「この<input type="date">の中身はカレンダーです!」とか宣言できないし、しちゃいけないし、できちゃいけないんですよ
それを決めるのは開発者じゃなくてユーザーです
ユーザーが自分の環境で一番使いやすい入力・表示形式を選びます
あるinput要素にtextContentとして扱える内容があるのかどうか、開発側にはわからない、
ユーザーエージェント依存の部分なので、<input>は空要素でなければなりません。
>今privateな物をpublicにしただけなんだよ。
だからそこpublicにしちゃダメなんですよ、UAによって何してくるか違うところなんで
開発者はユーザーエージェントがなんであれ、統合的に処理できるようにしなきゃいけないので
あるかどうかもわからないtextContentじゃなくて、どういう形式のフォームが使われるにせよ
確実に存在する"値"のシリアライズ文字列だけをvalueプロパティから取り出して扱うわけです。
385デフォルトの名無しさん
2018/04/07(土) 15:27:44.00ID:VB78bykL386デフォルトの名無しさん
2018/04/07(土) 15:41:38.38ID:VB78bykL >>385
> 後はHTML Standardで反映型属性(正確な用語は忘れた)があって
反映型IDL属性だった
https://teratail.com/questions/86442
いずれにしても重要なのは仕様を正しく理解して使いこなす事であって、仕様が分からない状態でコードを作り上げる事じゃない
彼は分からない道具を組み合わせて、分からないままでコードを書き上げようとしている
createTextRangeを知っていて、代替APIを発見できない検索スキルの低さも問題だが(初心者でも数秒で発見できる)
https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
> 後はHTML Standardで反映型属性(正確な用語は忘れた)があって
反映型IDL属性だった
https://teratail.com/questions/86442
いずれにしても重要なのは仕様を正しく理解して使いこなす事であって、仕様が分からない状態でコードを作り上げる事じゃない
彼は分からない道具を組み合わせて、分からないままでコードを書き上げようとしている
createTextRangeを知っていて、代替APIを発見できない検索スキルの低さも問題だが(初心者でも数秒で発見できる)
https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
387デフォルトの名無しさん
2018/04/07(土) 15:51:25.82ID:P5V8mbqH >>332
音の大きさとかじゃなくて、単にそのつまみ自体の値が欲しいのよね。
setValueAtTime でオートメーションを GainNode に大量に入れてやるわけだけど、
リリース(音の停止)の時はそれを現在位置でキャンセルして、現在の値からフェードアウトさせる必要がある。
その現在の値(つまり、最後に設定した値)が GainNode.gain.value で取得できないから、何やねんこれはとなってるわけ。
音の大きさとかじゃなくて、単にそのつまみ自体の値が欲しいのよね。
setValueAtTime でオートメーションを GainNode に大量に入れてやるわけだけど、
リリース(音の停止)の時はそれを現在位置でキャンセルして、現在の値からフェードアウトさせる必要がある。
その現在の値(つまり、最後に設定した値)が GainNode.gain.value で取得できないから、何やねんこれはとなってるわけ。
388デフォルトの名無しさん
2018/04/07(土) 15:52:59.09ID:VB78bykL389デフォルトの名無しさん
2018/04/07(土) 15:53:45.66ID:9ZwFE3Ij >>384
> あるかどうかもわからないtextContentじゃなくて、どういう形式のフォームが使われるにせよ
> 確実に存在する"値"のシリアライズ文字列だけをvalueプロパティから取り出して扱うわけです。
そもそも textContent は階層が潰れた文字列だし、
そこに textNode ならそれそのまま、
<calender>ならそれに対して textContent を発行した内容を返せばいいだけだろ。
それがシリアライズ文字列を返すのならそれが返るし、そうじゃない仕様なら空でもいいし。
いずれにしても普通の<div>等のtextContentと矛盾無く同じ並びになると思うが。
あれも多分 childNodes.map(function(v){return v.textContent;}).join(' ') だろ。
俺には何故君が出来ないと思えるのかさっぱり分からない。
ここで与太議論しても何も変わらないから終わりでもいいのだけど、君がこだわる理由も分からない。
当たり前だが、DOMの仕様がクソなのは君のせいじゃない。
あれは見た限り元々OOPじゃなかったのを無理にOOPに乗せようとしてるからおかしな事になってる。
でも多分、方向性としては正しいし、次第に綺麗に整備されていくだろうよ。
> あるかどうかもわからないtextContentじゃなくて、どういう形式のフォームが使われるにせよ
> 確実に存在する"値"のシリアライズ文字列だけをvalueプロパティから取り出して扱うわけです。
そもそも textContent は階層が潰れた文字列だし、
そこに textNode ならそれそのまま、
<calender>ならそれに対して textContent を発行した内容を返せばいいだけだろ。
それがシリアライズ文字列を返すのならそれが返るし、そうじゃない仕様なら空でもいいし。
いずれにしても普通の<div>等のtextContentと矛盾無く同じ並びになると思うが。
あれも多分 childNodes.map(function(v){return v.textContent;}).join(' ') だろ。
俺には何故君が出来ないと思えるのかさっぱり分からない。
ここで与太議論しても何も変わらないから終わりでもいいのだけど、君がこだわる理由も分からない。
当たり前だが、DOMの仕様がクソなのは君のせいじゃない。
あれは見た限り元々OOPじゃなかったのを無理にOOPに乗せようとしてるからおかしな事になってる。
でも多分、方向性としては正しいし、次第に綺麗に整備されていくだろうよ。
390デフォルトの名無しさん
2018/04/07(土) 16:01:21.65ID:C4tJt4pN > 当たり前だが、DOMの仕様がクソなのは君のせいじゃない。
> あれは見た限り元々OOPじゃなかったのを
ここだけ読んでもほんと頭が悪いなw
DOMはDocument Object Modelの略
すなわち「モデル」だ
OOPはobject-oriented programmingの略
すなわち「プログラミング」だ
モデルはでプログラミングじぇねぇ
> あれは見た限り元々OOPじゃなかったのを
ここだけ読んでもほんと頭が悪いなw
DOMはDocument Object Modelの略
すなわち「モデル」だ
OOPはobject-oriented programmingの略
すなわち「プログラミング」だ
モデルはでプログラミングじぇねぇ
391デフォルトの名無しさん
2018/04/07(土) 16:32:44.95ID:UX/dCiPK 確かに、DOMはIDLの集合でしかないな
OOPはプログラミングなので、対象が違う
OOPはプログラミングなので、対象が違う
392デフォルトの名無しさん
2018/04/07(土) 16:36:10.91ID:7ZRXk+Y5 HTMLはぁ〜
Javascripとんのためにあるんやないんやでぇ〜♪
Javascripとんのためにあるんやないんやでぇ〜♪
393デフォルトの名無しさん
2018/04/07(土) 16:50:07.71ID:k7L1I/bs >>389
>ここで与太議論しても何も変わらないから
そうですね、あなたがここで何を言おうとあなたの言うような仕様にはならないでしょう
「色データを文字列で表現したもの」と
「色を表すテキスト」は別物ですし、textContentやtextNodeは「色を表すテキスト」にしかなりません。
HTMLの基本構造としてそういうものなので。
<input type="color">が扱うことがわかっているのは「色データそのもの」や「色データを文字列で表現したもの」で、
「色を表すテキスト」を扱うかどうかはブラウザ依存で、開発者にはわかりません。
あなたの言うような仕様だとしたら、ブラウザは
カラーコードをユーザーにそのまま表示している時: "#00a3af"
色そのものしか扱ってない時: ""(空文字列)
ひどい時: "浅葱色"
をtextContentとして返してくるでしょうから、何が返ってくるのかわからないtextContentなんて誰も使わないでしょう。
>ここで与太議論しても何も変わらないから
そうですね、あなたがここで何を言おうとあなたの言うような仕様にはならないでしょう
「色データを文字列で表現したもの」と
「色を表すテキスト」は別物ですし、textContentやtextNodeは「色を表すテキスト」にしかなりません。
HTMLの基本構造としてそういうものなので。
<input type="color">が扱うことがわかっているのは「色データそのもの」や「色データを文字列で表現したもの」で、
「色を表すテキスト」を扱うかどうかはブラウザ依存で、開発者にはわかりません。
あなたの言うような仕様だとしたら、ブラウザは
カラーコードをユーザーにそのまま表示している時: "#00a3af"
色そのものしか扱ってない時: ""(空文字列)
ひどい時: "浅葱色"
をtextContentとして返してくるでしょうから、何が返ってくるのかわからないtextContentなんて誰も使わないでしょう。
394デフォルトの名無しさん
2018/04/07(土) 17:00:45.23ID:9ZwFE3Ij >>393
> あなたの言うような仕様だとしたら、(中略)
> をtextContentとして返してくるでしょうから、何が返ってくるのかわからないtextContentなんて誰も使わないでしょう。
それでいいと思うが。両方とも。つまり、
・textそのものでない場合はそれなりの文字列で返す仕様でいい。
まあ普通色ならARGBかWebColorの文字列になると思うが、それは仕様で決めればいい。
・誰も使わなくてもいい。
君は何がそんなに気に障っているのだ?それで誰も困らないだろ?
今できていることが出来なくなるわけでもないし。
> あなたの言うような仕様だとしたら、(中略)
> をtextContentとして返してくるでしょうから、何が返ってくるのかわからないtextContentなんて誰も使わないでしょう。
それでいいと思うが。両方とも。つまり、
・textそのものでない場合はそれなりの文字列で返す仕様でいい。
まあ普通色ならARGBかWebColorの文字列になると思うが、それは仕様で決めればいい。
・誰も使わなくてもいい。
君は何がそんなに気に障っているのだ?それで誰も困らないだろ?
今できていることが出来なくなるわけでもないし。
395デフォルトの名無しさん
2018/04/07(土) 17:01:52.07ID:C4tJt4pN > 君は何がそんなに気に障っているのだ?それで誰も困らないだろ?
> 今できていることが出来なくなるわけでもないし。
できなくなるんだから問題だって言ってるだろw
人の話聞けよ
> 今できていることが出来なくなるわけでもないし。
できなくなるんだから問題だって言ってるだろw
人の話聞けよ
396デフォルトの名無しさん
2018/04/07(土) 17:07:52.41ID:9ZwFE3Ij >>393
ちょっと言い方が曖昧だった。
多分、色について textContent で内容を取るのなら、
それはそのまま style:color に対して指定できる文字列が仕様としては良いだろう。
だから #xxxxxx とか red とか、まあそれはご存じの通り、で。
ちょっと言い方が曖昧だった。
多分、色について textContent で内容を取るのなら、
それはそのまま style:color に対して指定できる文字列が仕様としては良いだろう。
だから #xxxxxx とか red とか、まあそれはご存じの通り、で。
397デフォルトの名無しさん
2018/04/07(土) 17:10:47.60ID:k7L1I/bs >>394
>・textそのものでない場合はそれなりの文字列で返す仕様でいい。
> まあ普通色ならARGBかWebColorの文字列になると思うが、それは仕様で決めればいい。
<input type="color"> が、カラーコードのテキストノードを子要素として持つというのは
img要素が画像データを文字列にシリアライズしたものをテキストノードで子要素に持ったり
audio要素が音声データを文字列にシリアライズしたのものをテキストノードで子要素に持つようなものです。
明らかにHTMLの構造として異常ですから、確実に却下されるでしょう。
>・textそのものでない場合はそれなりの文字列で返す仕様でいい。
> まあ普通色ならARGBかWebColorの文字列になると思うが、それは仕様で決めればいい。
<input type="color"> が、カラーコードのテキストノードを子要素として持つというのは
img要素が画像データを文字列にシリアライズしたものをテキストノードで子要素に持ったり
audio要素が音声データを文字列にシリアライズしたのものをテキストノードで子要素に持つようなものです。
明らかにHTMLの構造として異常ですから、確実に却下されるでしょう。
398デフォルトの名無しさん
2018/04/07(土) 17:19:55.31ID:9ZwFE3Ij >>397
> img要素が画像データを文字列にシリアライズしたものをテキストノードで子要素に持ったり
> audio要素が音声データを文字列にシリアライズしたのものをテキストノードで子要素に持つようなものです。
そこはgetterでしょうに。
> img要素が画像データを文字列にシリアライズしたものをテキストノードで子要素に持ったり
> audio要素が音声データを文字列にシリアライズしたのものをテキストノードで子要素に持つようなものです。
そこはgetterでしょうに。
399デフォルトの名無しさん
2018/04/07(土) 17:25:29.79ID:1M9Ik5ns またSPAの時みたいに思いこみで話してんの?
というか毎回なの?こいつ。
というか毎回なの?こいつ。
400デフォルトの名無しさん
2018/04/07(土) 17:27:22.22ID:k7L1I/bs >>398
textContent は子孫要素のテキストノードをまとめたものを返すものですから、
<input type="color">がtextContentでカラーコードを返すとすれば、
子要素としてカラーコードのテキストを持つということであり、
これはimg要素が画像データを文字列にシリアライズしたものをテキストノードで子要素として直接持っていることに相当します。
これもさっき言いましたが、HTMLとそのDOMにおける"Content"の意味、ちゃんと勉強してくださいね。
textContent は子孫要素のテキストノードをまとめたものを返すものですから、
<input type="color">がtextContentでカラーコードを返すとすれば、
子要素としてカラーコードのテキストを持つということであり、
これはimg要素が画像データを文字列にシリアライズしたものをテキストノードで子要素として直接持っていることに相当します。
これもさっき言いましたが、HTMLとそのDOMにおける"Content"の意味、ちゃんと勉強してくださいね。
401デフォルトの名無しさん
2018/04/07(土) 17:27:29.89ID:C4tJt4pN あぁ、SPAやろうだったか。
動くコードも書かずにぐちぐちいうだけ
jQuery兄さんの足元にも及ばないな
動くコードも書かずにぐちぐちいうだけ
jQuery兄さんの足元にも及ばないな
402デフォルトの名無しさん
2018/04/07(土) 17:36:08.31ID:k7L1I/bs なんていうか意図的に「文字列」と「テキスト」を混同しているみたいだな
textContentで子孫ノードにないものを返すのはありえないし、
参照するデータのシリアライズ文字列をいちいちテキストノードで保持するというのもこれまたありえない
textContentで子孫ノードにないものを返すのはありえないし、
参照するデータのシリアライズ文字列をいちいちテキストノードで保持するというのもこれまたありえない
403デフォルトの名無しさん
2018/04/07(土) 18:43:27.70ID:9ZwFE3Ij >>402
だからそこはgetterだろと(2度目)
だからそこはgetterだろと(2度目)
404デフォルトの名無しさん
2018/04/07(土) 19:18:27.37ID:k7L1I/bs >>403
お前の提案したAPIだとテキストノードで保持することになるって意味な
お前の提案したAPIだとテキストノードで保持することになるって意味な
405デフォルトの名無しさん
2018/04/07(土) 19:19:40.39ID:mjGHGvcn >>387
テストしてみたが当たり前に取得できるぞ
テストしてみたが当たり前に取得できるぞ
406デフォルトの名無しさん
2018/04/07(土) 19:21:04.09ID:C4tJt4pN >>403
他の人も同じこと思ってるけど、
的はずれな用語を持ち出してきても意味不明なんだよ。
お前の言うgetterがなんなのかわけわからんし、
おそらくお前自身がわかってない。
わかってるというのならgetterとやらでどうなるのか説明してみ
他の人も同じこと思ってるけど、
的はずれな用語を持ち出してきても意味不明なんだよ。
お前の言うgetterがなんなのかわけわからんし、
おそらくお前自身がわかってない。
わかってるというのならgetterとやらでどうなるのか説明してみ
407デフォルトの名無しさん
2018/04/07(土) 20:00:16.59ID:Igh7VnfA 根本的に基礎知識不足がひどいな
>XHTMLではとりあえず終了タグ付けようとしただろ。
全然違う。HTMLとXHTMLの概念は変わらず、空要素も両者ある。
XHTMLは<br />のように「空要素のスラッシュを義務化」しようとしただけ。
>input
オブジェクトを定義するXAMLとかでは<TextBox>value</TextBox>みたいにできるから、できても変ではない。
(ただし、Xamlはあらゆる属性を子要素として記述できるというだけ)
しかし、HTMLは文章の構造を定義するmので、今更変更するメリットはない
>互換性の問題は深刻ではないので
これは間違い。かなり規模のでかい破壊的変更になる。
・親も含めてtextContentやinnerHTMLの結果が変わる
・過去のHTMLの解釈が大幅に変更され、パーサが複雑に
・セキュリティ上の多数の懸念
概念的にもinputは「フォームの部品」であり、それ以上分解できなくても不自然ではない
>Range で統合的に取り扱えるようになる
それは無理。それこそ表示はブラウザに依存するから。IMEの未確定文字などの複雑な概念は単純には処理できない
>getter
意味がよくわからん
>XHTMLではとりあえず終了タグ付けようとしただろ。
全然違う。HTMLとXHTMLの概念は変わらず、空要素も両者ある。
XHTMLは<br />のように「空要素のスラッシュを義務化」しようとしただけ。
>input
オブジェクトを定義するXAMLとかでは<TextBox>value</TextBox>みたいにできるから、できても変ではない。
(ただし、Xamlはあらゆる属性を子要素として記述できるというだけ)
しかし、HTMLは文章の構造を定義するmので、今更変更するメリットはない
>互換性の問題は深刻ではないので
これは間違い。かなり規模のでかい破壊的変更になる。
・親も含めてtextContentやinnerHTMLの結果が変わる
・過去のHTMLの解釈が大幅に変更され、パーサが複雑に
・セキュリティ上の多数の懸念
概念的にもinputは「フォームの部品」であり、それ以上分解できなくても不自然ではない
>Range で統合的に取り扱えるようになる
それは無理。それこそ表示はブラウザに依存するから。IMEの未確定文字などの複雑な概念は単純には処理できない
>getter
意味がよくわからん
408デフォルトの名無しさん
2018/04/07(土) 20:06:24.32ID:C4tJt4pN Rangeで同じように扱えるようにするだけのために
HTMLを壊そうとしてるんだよなw
HTMLを壊そうとしてるんだよなw
409デフォルトの名無しさん
2018/04/07(土) 20:10:45.55ID:Igh7VnfA 分かってない君は語彙が変なのが余計にわかりづらさを助長してるな
「ポップアップ」「参照」「参照ポイント」「getter」あたりは世間と認識がだいぶずれてる
「ポップアップ」「参照」「参照ポイント」「getter」あたりは世間と認識がだいぶずれてる
410デフォルトの名無しさん
2018/04/07(土) 20:35:46.41ID:9ZwFE3Ij >>407
> 空要素についても同様に終了タグを付与するか、開始タグの末尾を「/>」としなければならない。
> 終了タグを付与する <br></br> という表記の場合は、タグの間に空白類文字すら含めてはいけない。
> また、後方互換性のために <br></br> ではなく、<br /> と表記することが推奨されている
> https://ja.wikipedia.org/wiki/Extensible_HyperText_Markup_Language
つまり終了タグ無し要素は無しになってるだろ。
> 「空要素のスラッシュを義務化」
この解釈は矮小化してる。上記参照。
> (ただし、Xamlはあらゆる属性を子要素として記述できるというだけ)
俺は知らんがXAMLの連中はそれの方が一般的でいいと解釈したんだろ。わからんでもないだろ。
> しかし、HTMLは文章の構造を定義するmので、今更変更するメリットはない
そう思うのは勝手だが、XHTMLとかも要するにAltHTMLだろ。
HTMLもJavaScriptも色々糞な所はあるんだよ。(HTMLそのものというよりはDOMだが)
ただ、両方とも我慢できないほどではないから現状があるわけで。
> パーサが複雑に
これはない。単純になる。
> 概念的にもinputは「フォームの部品」であり、それ以上分解できなくても不自然ではない
<input type="text">についてもそう思うか?
> IMEの未確定文字などの複雑な概念は単純には処理できない
そんなに複雑だと思うか?
俺が試した限り、未確定文字もインクリメンタルサーチに当たるから、単純に、
・未確定文字も「入力されている」扱い
・確定時に該当部分を消して書き直しているだけ
っぽいぞ。少なくともvalueと見た目からはそう見える。
まあこれは余談だが。
> 意味がよくわからん
お前もかよ
> 空要素についても同様に終了タグを付与するか、開始タグの末尾を「/>」としなければならない。
> 終了タグを付与する <br></br> という表記の場合は、タグの間に空白類文字すら含めてはいけない。
> また、後方互換性のために <br></br> ではなく、<br /> と表記することが推奨されている
> https://ja.wikipedia.org/wiki/Extensible_HyperText_Markup_Language
つまり終了タグ無し要素は無しになってるだろ。
> 「空要素のスラッシュを義務化」
この解釈は矮小化してる。上記参照。
> (ただし、Xamlはあらゆる属性を子要素として記述できるというだけ)
俺は知らんがXAMLの連中はそれの方が一般的でいいと解釈したんだろ。わからんでもないだろ。
> しかし、HTMLは文章の構造を定義するmので、今更変更するメリットはない
そう思うのは勝手だが、XHTMLとかも要するにAltHTMLだろ。
HTMLもJavaScriptも色々糞な所はあるんだよ。(HTMLそのものというよりはDOMだが)
ただ、両方とも我慢できないほどではないから現状があるわけで。
> パーサが複雑に
これはない。単純になる。
> 概念的にもinputは「フォームの部品」であり、それ以上分解できなくても不自然ではない
<input type="text">についてもそう思うか?
> IMEの未確定文字などの複雑な概念は単純には処理できない
そんなに複雑だと思うか?
俺が試した限り、未確定文字もインクリメンタルサーチに当たるから、単純に、
・未確定文字も「入力されている」扱い
・確定時に該当部分を消して書き直しているだけ
っぽいぞ。少なくともvalueと見た目からはそう見える。
まあこれは余談だが。
> 意味がよくわからん
お前もかよ
411デフォルトの名無しさん
2018/04/07(土) 20:43:14.47ID:C4tJt4pN > これはない。単純になる。
それはない。複雑になる。
それはない。複雑になる。
412デフォルトの名無しさん
2018/04/07(土) 20:45:19.21ID:C4tJt4pN 属性を子要素にするとか何も分かってない
まず属性は複数ある。
<input value="a" type="text">
この場合、typeも子要素になる。
valueとtypeの両方が子要素になってしまう。
まず属性は複数ある。
<input value="a" type="text">
この場合、typeも子要素になる。
valueとtypeの両方が子要素になってしまう。
413デフォルトの名無しさん
2018/04/07(土) 20:46:47.05ID:k7L1I/bs >>410
>つまり終了タグ無し要素は無しになってるだろ。
終了タグとか関係なしに、内容を持たない「空要素」という概念があって、
は? どこをどう読んだらそういう解釈になるのか。文盲?
空要素という概念が先にあって、表記形式として<br></br>か<br />のどっちか使えってだけで
XHTMLでは空要素にとって終了タグがあるかどうかなんて ど う で も い い ってことなんだけど
終了タグも<br />も空要素の表現手法であって、空要素が主、タグは従
タグにやたらこだわってるあたり、本当にWebの基礎の基礎がわかってないんじゃない?
タグなんて要素を表現する書式でしかないんだから、XHTMLでスラッシュが義務化されようが
終了タグが容認されようが、「空要素」という概念自体には何の関係もないよ
>そんなに複雑だと思うか?
>俺が試した限り、未確定文字もインクリメンタルサーチに当たるから、単純に、
だからー、それユーザーの環境によって違うのね
ユーザーによってデバイスもOSもブラウザも入力メソッドも何もかもバラバラ
お前の環境ではそうだった、っていうのはお前の環境ではそうっていう以上のものではないので、この議論に無意味
お前Webでユーザーの環境を開発者が決定できると勘違いしてるんじゃね?
>つまり終了タグ無し要素は無しになってるだろ。
終了タグとか関係なしに、内容を持たない「空要素」という概念があって、
は? どこをどう読んだらそういう解釈になるのか。文盲?
空要素という概念が先にあって、表記形式として<br></br>か<br />のどっちか使えってだけで
XHTMLでは空要素にとって終了タグがあるかどうかなんて ど う で も い い ってことなんだけど
終了タグも<br />も空要素の表現手法であって、空要素が主、タグは従
タグにやたらこだわってるあたり、本当にWebの基礎の基礎がわかってないんじゃない?
タグなんて要素を表現する書式でしかないんだから、XHTMLでスラッシュが義務化されようが
終了タグが容認されようが、「空要素」という概念自体には何の関係もないよ
>そんなに複雑だと思うか?
>俺が試した限り、未確定文字もインクリメンタルサーチに当たるから、単純に、
だからー、それユーザーの環境によって違うのね
ユーザーによってデバイスもOSもブラウザも入力メソッドも何もかもバラバラ
お前の環境ではそうだった、っていうのはお前の環境ではそうっていう以上のものではないので、この議論に無意味
お前Webでユーザーの環境を開発者が決定できると勘違いしてるんじゃね?
414デフォルトの名無しさん
2018/04/07(土) 20:48:02.82ID:k7L1I/bs >>413
行がちょっとずれたけど、2行目は5行目の前あたりに入れて読んでねー
行がちょっとずれたけど、2行目は5行目の前あたりに入れて読んでねー
415デフォルトの名無しさん
2018/04/07(土) 20:49:49.80ID:9ZwFE3Ij >>413
了解。お前は文盲と理解した。お前とのレスもこれまで。
了解。お前は文盲と理解した。お前とのレスもこれまで。
416デフォルトの名無しさん
2018/04/07(土) 20:53:55.19ID:k7L1I/bs >>415
>>空要素についても同様に終了タグを付与するか、開始タグの末尾を「/>」としなければならない。
>終了タグ無し要素は無しになってるだろ。
文盲はあなたですよねー、
>終了タグを付与するか、開始タグの末尾を「/>」としなければならない。
いいですか。"終了タグを付与する」" OR "開始タグの末尾を「/>」とする"のどっちかをやれって言ってるわけだよ
"開始タグの末尾を「/>」とすれば、終了タグはなくてもいい"って言ってんの
終了タグ無し要素は無しって何?
>>空要素についても同様に終了タグを付与するか、開始タグの末尾を「/>」としなければならない。
>終了タグ無し要素は無しになってるだろ。
文盲はあなたですよねー、
>終了タグを付与するか、開始タグの末尾を「/>」としなければならない。
いいですか。"終了タグを付与する」" OR "開始タグの末尾を「/>」とする"のどっちかをやれって言ってるわけだよ
"開始タグの末尾を「/>」とすれば、終了タグはなくてもいい"って言ってんの
終了タグ無し要素は無しって何?
417デフォルトの名無しさん
2018/04/07(土) 20:54:26.50ID:TNUh6n8A 分かってない君の敗北宣言出たから勝負ありだね
418デフォルトの名無しさん
2018/04/07(土) 21:02:05.48ID:k7L1I/bs 空要素は終了タグつけるか、終了タグなしなら /> で開始タグを閉じてね
どっちかといえば終了タグなしの /> が推奨だヨ
っていうテキストを読んで「終了タグ無し要素は無しになってる」とか本気で文盲としか思えん
どっちかといえば終了タグなしの /> が推奨だヨ
っていうテキストを読んで「終了タグ無し要素は無しになってる」とか本気で文盲としか思えん
419デフォルトの名無しさん
2018/04/07(土) 21:11:16.62ID:k7L1I/bs しかもなーんで引用するのがw3cじゃなくてWikipediaなんですかねえ
もしかして上級者気取りで仕様書程度の英語も読めない感じ?
https://www.w3.org/TR/xhtml1/#h-4.6
以下引用、括弧内は引用者訳
4.3. For non-empty elements, end tags are required
(空でない要素は終了タグが必須です)
4.6. Empty Elements
Empty elements must either have an end tag or the start tag must end with />.
(空要素は終了タグを持つか、開始タグが /> で終了するか、どちらか一方が必要です。)
もしかして上級者気取りで仕様書程度の英語も読めない感じ?
https://www.w3.org/TR/xhtml1/#h-4.6
以下引用、括弧内は引用者訳
4.3. For non-empty elements, end tags are required
(空でない要素は終了タグが必須です)
4.6. Empty Elements
Empty elements must either have an end tag or the start tag must end with />.
(空要素は終了タグを持つか、開始タグが /> で終了するか、どちらか一方が必要です。)
420デフォルトの名無しさん
2018/04/07(土) 21:13:48.94ID:9ZwFE3Ij >>407
つかXAMLってWPFかよ。以下読んだ。
https://docs.microsoft.com/ja-jp/dotnet/framework/wpf/advanced/xaml-overview-wpf
見た目、以下か。
・終了タグ必須
・textNodeなし、絶対にタグで囲め
・case sensitive
まあ確かにHTMLを参考に作ったんだからこうなるわな。仕様としては妥当だ。
とはいえ冗長だし、人間が書く用ではないが。
.(ドット)で明示的にプロパティと分かるようになっているね。
確かにこれの方がいい。
ただ個人的には、XAMLとか中途半端なことをせず、
WPFはHTMLを全面採用した方がいいとは思ったが。
つかXAMLってWPFかよ。以下読んだ。
https://docs.microsoft.com/ja-jp/dotnet/framework/wpf/advanced/xaml-overview-wpf
見た目、以下か。
・終了タグ必須
・textNodeなし、絶対にタグで囲め
・case sensitive
まあ確かにHTMLを参考に作ったんだからこうなるわな。仕様としては妥当だ。
とはいえ冗長だし、人間が書く用ではないが。
.(ドット)で明示的にプロパティと分かるようになっているね。
確かにこれの方がいい。
ただ個人的には、XAMLとか中途半端なことをせず、
WPFはHTMLを全面採用した方がいいとは思ったが。
421デフォルトの名無しさん
2018/04/07(土) 21:34:45.38ID:C4tJt4pN422デフォルトの名無しさん
2018/04/07(土) 21:36:42.10ID:C4tJt4pN 1つ目
> つかXAMLってWPFかよ。
XAMLはXAML、WPFとともに作られたがWPFではない
実際にXamarinでも使われている
> つかXAMLってWPFかよ。
XAMLはXAML、WPFとともに作られたがWPFではない
実際にXamarinでも使われている
423デフォルトの名無しさん
2018/04/07(土) 21:37:55.91ID:zzgNzmOg >>405
ほんと?情報ありがとう。
じゃあ Firefox の実装が変なんかな。
どんなに
GainNode.gain.value = v;
なり
GainNode.gain.setValueAtTime(v, t);
なりで指定しても GainNode.gain.value が 0.1400049 みたいな固定の値しか返してくれないんだ。
初期値(=1)でもないし、なんじゃその値は。
自分のためにつくってるプログラムだから Firefox でないと意味ないし…。まあ別の方法でリリース制御はできたからいいけど。
ほんと?情報ありがとう。
じゃあ Firefox の実装が変なんかな。
どんなに
GainNode.gain.value = v;
なり
GainNode.gain.setValueAtTime(v, t);
なりで指定しても GainNode.gain.value が 0.1400049 みたいな固定の値しか返してくれないんだ。
初期値(=1)でもないし、なんじゃその値は。
自分のためにつくってるプログラムだから Firefox でないと意味ないし…。まあ別の方法でリリース制御はできたからいいけど。
424デフォルトの名無しさん
2018/04/07(土) 21:38:03.28ID:C4tJt4pN 2つ目
> 見た目、以下か。
名前からXAMLはXMLの一種だと気づけ
そもそもXMLにはHTMLという決まったタグはなく
タグを仕様として作ってから使うもの、その仕様の一つがXAML
> 見た目、以下か。
名前からXAMLはXMLの一種だと気づけ
そもそもXMLにはHTMLという決まったタグはなく
タグを仕様として作ってから使うもの、その仕様の一つがXAML
425デフォルトの名無しさん
2018/04/07(土) 21:38:33.13ID:C4tJt4pN 3つ目
> ・終了タグ必須
XMLなんだから当たり前
> ・終了タグ必須
XMLなんだから当たり前
426デフォルトの名無しさん
2018/04/07(土) 21:38:52.62ID:C4tJt4pN 4つ目
> ・textNodeなし、絶対にタグで囲め
XMLなんだからtextNodeある
> ・textNodeなし、絶対にタグで囲め
XMLなんだからtextNodeある
427デフォルトの名無しさん
2018/04/07(土) 21:39:10.03ID:C4tJt4pN 4つ目
> ・case sensitive
XMLなんだから当たり前
> ・case sensitive
XMLなんだから当たり前
428デフォルトの名無しさん
2018/04/07(土) 21:39:54.29ID:C4tJt4pN 6つ目
> まあ確かにHTMLを参考に作ったんだからこうなるわな。仕様としては妥当だ。
XMLをベースに作った。HTMLは関係ない
> まあ確かにHTMLを参考に作ったんだからこうなるわな。仕様としては妥当だ。
XMLをベースに作った。HTMLは関係ない
429デフォルトの名無しさん
2018/04/07(土) 21:42:00.86ID:C4tJt4pN 7つ目
> とはいえ冗長だし、人間が書く用ではないが。
人間でも読み書きしやすい
> http://ytabuchi.hatenablog.com/entry/2017/01/04/160000
> 新年一発目は XAML Previewer についてです。Xamarin.Forms の XAML は手書きする必要があります。
> とはいえ冗長だし、人間が書く用ではないが。
人間でも読み書きしやすい
> http://ytabuchi.hatenablog.com/entry/2017/01/04/160000
> 新年一発目は XAML Previewer についてです。Xamarin.Forms の XAML は手書きする必要があります。
430デフォルトの名無しさん
2018/04/07(土) 21:42:28.61ID:C4tJt4pN 8つ目
> ただ個人的には、XAMLとか中途半端なことをせず、
> WPFはHTMLを全面採用した方がいいとは思ったが。
HTMLはタグセットが決まってるのでそんな事はできない
> ただ個人的には、XAMLとか中途半端なことをせず、
> WPFはHTMLを全面採用した方がいいとは思ったが。
HTMLはタグセットが決まってるのでそんな事はできない
431デフォルトの名無しさん
2018/04/07(土) 21:42:55.93ID:C4tJt4pN ほんとひどいわw
1レスでいくつ突っ込めば良いんだか
1レスでいくつ突っ込めば良いんだか
432デフォルトの名無しさん
2018/04/07(土) 21:50:31.07ID:b9R9ZKfb > ID:C4tJt4pN
いろいろ、お疲れ様(大変だな…)
いろいろ、お疲れ様(大変だな…)
433デフォルトの名無しさん
2018/04/07(土) 21:53:48.31ID:C4tJt4pN そもそも属性を要素とみなしてしまえばRangeで扱えるようになるとか言ってるが
今まで属性はRangeに含まれていなかったのに、勝手に含まれるようになれば
互換性が壊れるって分からんのかね?
今まで属性はRangeに含まれていなかったのに、勝手に含まれるようになれば
互換性が壊れるって分からんのかね?
434デフォルトの名無しさん
2018/04/07(土) 21:57:51.13ID:EBKHgg8Q この人HTMLを<tag attribute="属性値">内容</tag>みたいな書式のことだと思ってるのでは
435デフォルトの名無しさん
2018/04/07(土) 22:41:28.46ID:Igh7VnfA >つまり終了タグ無し要素は無しになってるだろ。
空要素の記述方法が、XMLでは<hoge></hoge>か<hoge />とする。HTML5では<hoge>とすることになっただけ
パース後の内部表現は同じ
>XHTMLとかも要するにAltHTMLだろ
すでにhtml5が発行されて、議論は終結した。
>パーサ
例えば、こういうコードがすでに存在するとする。
<input value="aaa">bbb</input>
現在はXMLとして書くと「<input value="aaa" />bbb」となるが仕様変更すると「<input value="aaa">bbb</input>」となり、解釈が変わってしまう
>未確定文字
とりあえず、WindowsのIME関連のAPIを調べてみればわかるけど、かなり複雑な部類
スマホの横持ちとかでは、全画面が入力欄になったり、音声入力があったり、将来的な変化も見込まれる
空要素の記述方法が、XMLでは<hoge></hoge>か<hoge />とする。HTML5では<hoge>とすることになっただけ
パース後の内部表現は同じ
>XHTMLとかも要するにAltHTMLだろ
すでにhtml5が発行されて、議論は終結した。
>パーサ
例えば、こういうコードがすでに存在するとする。
<input value="aaa">bbb</input>
現在はXMLとして書くと「<input value="aaa" />bbb」となるが仕様変更すると「<input value="aaa">bbb</input>」となり、解釈が変わってしまう
>未確定文字
とりあえず、WindowsのIME関連のAPIを調べてみればわかるけど、かなり複雑な部類
スマホの横持ちとかでは、全画面が入力欄になったり、音声入力があったり、将来的な変化も見込まれる
436デフォルトの名無しさん
2018/04/07(土) 22:42:36.62ID:Igh7VnfA JavaScriptやDOMに疎いのはまだしも、XMLの知識がおかしいのは流石に現代プログラマーとしてヤバさを感じる
437デフォルトの名無しさん
2018/04/07(土) 23:06:52.65ID:9ZwFE3Ij >>435
> 例えば、こういうコードがすでに存在するとする。
> <input value="aaa">bbb</input>
> 現在はXMLとして書くと「<input value="aaa" />bbb」となるが
これは本当なのか?この記述をしているところのソースくれ。
なお俺はこれは間違っていると思うぞ。
俺は /> で閉じて良いのは中身がないときだけであり、
中身がある場合は常に閉じタグ</input>を使わなければならない、と理解している。
勿論、ご指摘のように、俺はXML専門家ではないが。
> とりあえず、WindowsのIME関連のAPIを調べてみればわかるけど、かなり複雑な部類
> スマホの横持ちとかでは、全画面が入力欄になったり、音声入力があったり、将来的な変化も見込まれる
それで?
未確定文字は結局の所、
・未確定でも値に反映して確定後に書き直す…俺の環境
・確定するまでは値に反映しない
のどちらかしか無いと思うが。
> 例えば、こういうコードがすでに存在するとする。
> <input value="aaa">bbb</input>
> 現在はXMLとして書くと「<input value="aaa" />bbb」となるが
これは本当なのか?この記述をしているところのソースくれ。
なお俺はこれは間違っていると思うぞ。
俺は /> で閉じて良いのは中身がないときだけであり、
中身がある場合は常に閉じタグ</input>を使わなければならない、と理解している。
勿論、ご指摘のように、俺はXML専門家ではないが。
> とりあえず、WindowsのIME関連のAPIを調べてみればわかるけど、かなり複雑な部類
> スマホの横持ちとかでは、全画面が入力欄になったり、音声入力があったり、将来的な変化も見込まれる
それで?
未確定文字は結局の所、
・未確定でも値に反映して確定後に書き直す…俺の環境
・確定するまでは値に反映しない
のどちらかしか無いと思うが。
438デフォルトの名無しさん
2018/04/07(土) 23:15:52.25ID:b9R9ZKfb >>435
> 現在はXMLとして書くと「<input value="aaa" />bbb」となるが
HTML parserで動かしてないか?
XML parserならSynraxErrorになりそうだが、Content-Typeは正しく指定されてるのかね…
> 現在はXMLとして書くと「<input value="aaa" />bbb」となるが
HTML parserで動かしてないか?
XML parserならSynraxErrorになりそうだが、Content-Typeは正しく指定されてるのかね…
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 【地震速報】青森県で震度6強 沿岸部に津波警報 ★6 [ぐれ★]
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 [蚤の市★]
- 【速報】気象庁は津波注意報すべて解除 [蚤の市★]
- 【サッカー】58歳カズ「オファーが来ている」 J3福島と近日中にも交渉 早ければ年内にも決断 [征夷大将軍★]
- 「日の丸にバツ印」掲げた大学生 あいまいな国旗損壊罪に「怖い」 The Mainichi [少考さん★]
- 働いて参ります
- ( ・᷄ὢ・᷅ )あ?
- 地震
- こんぺこ!こんぺこ!こんぺこ!🐰🏡
- 早大名誉教授「高市内閣の高支持率はデータ操作か、支持している日本人がアホなのか」👈核心を突いてしまう [868050967]
- ブタをぶったたく
