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

みんなの評価 :
レスフィルター : (試験中)
var __s = '';
document.open = document.close = function() {
__s = '';
}
document.write = function(s) {
document.body.innerHTML = __s+s;
}
document.open = document.close = function() {
__s = '';
}
document.write = function(s) {
document.body.innerHTML = __s+s;
}
innerHTMLってその場にそれだけ書いて動くの?
元々あるタグの操作とかでしょ?
document.writeはいきなり書いても出力できるよね。
forでループさせてtableタグを一気に書きたい場合とかはどうするんでしょうか?
元々あるタグの操作とかでしょ?
document.writeはいきなり書いても出力できるよね。
forでループさせてtableタグを一気に書きたい場合とかはどうするんでしょうか?
document.body.innerHTML = '<table>';
document.body.innerHTML += '<tr>';
document.body.innerHTML += '<tr>';
(親フレーム)
<title name="t1">フレーム使用例</title>
・・・
<frameset rows="100,*">
<frame src="fm3.html" name="ue">
<frameset cols="150,*">
<frame src="fm1.html" name="hidari">
<frame src="fm2.html" name="migi">
</frameset>
(fm3.html)
parent.document.getElementById("t1").value = "test frame";
ではないんでしょうか?
普通にtitleで書いても動かないです・・・
<title name="t1">フレーム使用例</title>
・・・
<frameset rows="100,*">
<frame src="fm3.html" name="ue">
<frameset cols="150,*">
<frame src="fm1.html" name="hidari">
<frame src="fm2.html" name="migi">
</frameset>
(fm3.html)
parent.document.getElementById("t1").value = "test frame";
ではないんでしょうか?
普通にtitleで書いても動かないです・・・
なるほど
それで>>142のような馬鹿な質問ができるのか
それで>>142のような馬鹿な質問ができるのか
>>124
ありがとうございます。できました。
ただ、ちょっと分からないことがあります。
document.body.getElementsByTagName('p') は大丈夫なのに、
document.body.getElementById('data1') はダメなんですね。
なぜダメなんでしょうか。
それと、追加で質問なのですが、
<div class="data1">の中を取得したい場合はライブラリ等の関数が
必要になるということでしょうか。
ありがとうございます。できました。
ただ、ちょっと分からないことがあります。
document.body.getElementsByTagName('p') は大丈夫なのに、
document.body.getElementById('data1') はダメなんですね。
なぜダメなんでしょうか。
それと、追加で質問なのですが、
<div class="data1">の中を取得したい場合はライブラリ等の関数が
必要になるということでしょうか。
>>163
中途半端な実装は避けるべきだぞ。タコ野郎。
中途半端な実装は避けるべきだぞ。タコ野郎。
>>158
> document.body.getElementsByTagName('p') は大丈夫なのに、
> document.body.getElementById('data1') はダメなんですね。
> なぜダメなんでしょうか。
DOM L2 Core によると、Element#getElementsByTagName はありますが、Element#getElementById はない為だと思われます。
http://www.y-adagio.com/public/standards/tr_dom2_core/core.html#ID-745549614
> document.body.getElementsByTagName('p') は大丈夫なのに、
> document.body.getElementById('data1') はダメなんですね。
> なぜダメなんでしょうか。
DOM L2 Core によると、Element#getElementsByTagName はありますが、Element#getElementById はない為だと思われます。
http://www.y-adagio.com/public/standards/tr_dom2_core/core.html#ID-745549614
>>162>>166>>170
ありがとうございます。
良く分かりました。この部分はきっと厳密に作られた仕様を忠実に守ってるんですね。
>>170
確かにインタフェースDocumentのほうにだけgetElementByIdがありました。
http://www.y-adagio.com/public/standards/tr_dom2_core/core.html#i-Document
getElementsByClassNameも分かりました。
ですが、IE8以前には存在しないということで、そういった古いブラウザを考慮する場合は
何か関数を作ってやらないと取得できない、そういう理解で正しいでしょうか?
ありがとうございます。
良く分かりました。この部分はきっと厳密に作られた仕様を忠実に守ってるんですね。
>>170
確かにインタフェースDocumentのほうにだけgetElementByIdがありました。
http://www.y-adagio.com/public/standards/tr_dom2_core/core.html#i-Document
getElementsByClassNameも分かりました。
ですが、IE8以前には存在しないということで、そういった古いブラウザを考慮する場合は
何か関数を作ってやらないと取得できない、そういう理解で正しいでしょうか?
>>158
var nodes = document.getElementById('name1').getElementsByTagName('p');
for ( var i = 0; i < nodes.length; ++i ) {
// nodes[i].childNodes[0].data がテキスト。表示するなり配列にpushするなりご自由に。
}
var nodes = document.getElementById('name1').getElementsByTagName('p');
for ( var i = 0; i < nodes.length; ++i ) {
// nodes[i].childNodes[0].data がテキスト。表示するなり配列にpushするなりご自由に。
}
>>172
IE8+ には querySelector が存在します。
getElementsByClassName と違って not-live ですが、live である必要性がない場合には扱いやすい API です。
IE7- にはjQuery等のライブラリを利用するか、Selectors API や getElementsByClassName を自作するか、IE7- だけ処理を分けるしかないですね。
# ちなみに、getElementsByClassName は live ですので完全な互換性を持つライブラリは作成できません。
IE8+ には querySelector が存在します。
getElementsByClassName と違って not-live ですが、live である必要性がない場合には扱いやすい API です。
IE7- にはjQuery等のライブラリを利用するか、Selectors API や getElementsByClassName を自作するか、IE7- だけ処理を分けるしかないですね。
# ちなみに、getElementsByClassName は live ですので完全な互換性を持つライブラリは作成できません。
あああああああリロードしてなかったー
すみません…
すみません…
>>159
説明不足ですみませんでした。
例えばOperaでは、このようなエラーが出たのです。
Uncaught exception: TypeError: 'document.body.getElementById' is not a function
>>173
例をありがとうございます。
まだ試してみてませんが、nodes[i].childNodes[0].dataは大変参考になります。
今までは
F='innerText'in document.body;
としておいて、
F?nodes[i].innerText:nodes[i].textContent
のようにテキストを得ていました。
説明不足ですみませんでした。
例えばOperaでは、このようなエラーが出たのです。
Uncaught exception: TypeError: 'document.body.getElementById' is not a function
>>173
例をありがとうございます。
まだ試してみてませんが、nodes[i].childNodes[0].dataは大変参考になります。
今までは
F='innerText'in document.body;
としておいて、
F?nodes[i].innerText:nodes[i].textContent
のようにテキストを得ていました。
【やりたいこと】
要素の背景色(background)を1秒ごとに、黄色⇔灰色のように
変更して点滅のような効果を出したいです。
【試したこと】
デフォルトではcssで黄色(#FF0)に設定。
jqueryのsetIntervalと、if文を組み合わせて
flagが0なら灰色(#CCC)に変更して、flagを1にする。
次のif分岐の時は、elseの方に入るので、黄色(#FF0)に変更してflagを0にする…
というような方法。
【結果】
灰色に変更してから次の黄色に変更の動作に進んでくれません。。。
【ソース】
http://jsdo.it/hirorih/fhhc
【ひとこと】
お知恵おかしくださいませ。
要素の背景色(background)を1秒ごとに、黄色⇔灰色のように
変更して点滅のような効果を出したいです。
【試したこと】
デフォルトではcssで黄色(#FF0)に設定。
jqueryのsetIntervalと、if文を組み合わせて
flagが0なら灰色(#CCC)に変更して、flagを1にする。
次のif分岐の時は、elseの方に入るので、黄色(#FF0)に変更してflagを0にする…
というような方法。
【結果】
灰色に変更してから次の黄色に変更の動作に進んでくれません。。。
【ソース】
http://jsdo.it/hirorih/fhhc
【ひとこと】
お知恵おかしくださいませ。
>>178
なにそれ迷惑スクリプト
なにそれ迷惑スクリプト
>>180
ポケモンフラッシュをjsで移植してるんじゃね?
ポケモンフラッシュをjsで移植してるんじゃね?
でも>>182ってやろうと思えばできるよな
>>191
1秒間に3回は光過敏性発作を引き起こさない条件か
http://www.jsa.or.jp/stdz/instac/commitee-acc/W3C-WCAG/WCAG20/index.html#seizure
2.2.2 ではもっと広範な条件になってるな
http://www.jsa.or.jp/stdz/instac/commitee-acc/W3C-WCAG/WCAG20/index.html#time-limits-pause
1秒間に3回は光過敏性発作を引き起こさない条件か
http://www.jsa.or.jp/stdz/instac/commitee-acc/W3C-WCAG/WCAG20/index.html#seizure
2.2.2 ではもっと広範な条件になってるな
http://www.jsa.or.jp/stdz/instac/commitee-acc/W3C-WCAG/WCAG20/index.html#time-limits-pause
子供の頃、basicで画面の色を赤青緑マゼンタ…と変えるのをループさせると
画面が白く見えることに気づいて、順番とか変えながらずっといじってたら
ゲロ吐いて寝込んだことがあるのを思い出した
関係あるのかなあ
画面が白く見えることに気づいて、順番とか変えながらずっといじってたら
ゲロ吐いて寝込んだことがあるのを思い出した
関係あるのかなあ
Javascriptで下記のベタ記述は動きますが、
var pic1 = document.all("pic1");
var pic2 = document.all("pic2");
var pic3 = document.all("pic3");
pic1.style.display = "block";
pic2.style.display = "none";
pic3.style.display = "none";
for文で回した記述は動きませんでした。
For(i=1, i<=3, i++)
{
id="pic"+i;
pic[i] = document.all(id);
if(i>1){ pic[i].style.display = "block"; }
else{ pic[i].style.display = "none"; }
}
何かいい方法はありますか?xmlファイルを読み出して
画像の表示をしようとしています。
var pic1 = document.all("pic1");
var pic2 = document.all("pic2");
var pic3 = document.all("pic3");
pic1.style.display = "block";
pic2.style.display = "none";
pic3.style.display = "none";
for文で回した記述は動きませんでした。
For(i=1, i<=3, i++)
{
id="pic"+i;
pic[i] = document.all(id);
if(i>1){ pic[i].style.display = "block"; }
else{ pic[i].style.display = "none"; }
}
何かいい方法はありますか?xmlファイルを読み出して
画像の表示をしようとしています。
すまん、ちゃんと読んでなかった。そのfor文があってるのかとか
外側で配列picを作っているのかとかエラー出てないのかとかを
確認するべきかと。
外側で配列picを作っているのかとかエラー出てないのかとかを
確認するべきかと。



類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.109 + (1001) - [97%] - 2013/10/7 13:16
- + JavaScript の質問用スレッド vol.130 + (974) - [97%] - 2016/10/26 14:18
- + JavaScript の質問用スレッド vol.130 + (1001) - [97%] - 2017/11/25 20:45
- + JavaScript の質問用スレッド vol.110 + (1001) - [97%] - 2013/10/13 14:01
- + JavaScript の質問用スレッド vol.120 + (1002) - [97%] - 2014/11/8 1:15
- + JavaScript の質問用スレッド vol.108 + (1001) - [97%] - 2013/9/21 15:16
- + JavaScript の質問用スレッド vol.107 + (1001) - [97%] - 2013/9/7 10:16
- + JavaScript の質問用スレッド vol.106 + (1001) - [97%] - 2013/7/20 9:30
- + JavaScript の質問用スレッド vol.140 + (1001) - [97%] - 2019/9/19 10:45
- + JavaScript の質問用スレッド vol.105 + (1001) - [97%] - 2013/5/20 4:45
- + JavaScript の質問用スレッド vol.104 + (1001) - [97%] - 2013/1/28 4:00
- + JavaScript の質問用スレッド vol.103 + (1001) - [97%] - 2012/11/9 15:30
- + JavaScript の質問用スレッド vol.102 + (1001) - [97%] - 2012/9/11 17:30
- + JavaScript の質問用スレッド vol.101 + (1001) - [97%] - 2012/7/16 14:15
- + JavaScript の質問用スレッド vol.121 + (1001) - [95%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.122 + (1004) - [95%] - 2015/2/14 4:45
- + JavaScript の質問用スレッド vol.122 + (116) - [95%] - 2018/5/2 18:30
トップメニューへ / →のくす牧場書庫について