元スレ+ JavaScript の質問用スレッド vol.80 +
JavaScript覧 / PC版 /みんなの評価 :
51 = :
すみません
自分では何度やっても20分後に画像が変わって
その後40分変わらずという感じになってしまいました
52 = :
( ? 1 : 0)
ここを分解すると
var a = 0;
if (29 < d.getMinutes()) {
a = 1;
}
こうなるあとは考えろ
53 = :
1行目訂正w
( ? 1 : 0)
↓
(d.getMinutes()>29 ? 1 : 0)
54 = :
画像タグの定義方法を時間と分とで分けたら、手っ取り早いと思うよ
55 = :
var msg = [
// 0時台の画像
[
"<IMG SRC='XXX.jpg' />",
"<IMG SRC='XXX.jpg' />"
]
略
// 23時台の画像
,[
"<IMG SRC='XXX.jpg' />",
"<IMG SRC='XXX.jpg' />",
"<IMG SRC='XXX.jpg' />",
"<IMG SRC='XXX.jpg' />"
]
];
こんな感じの定義の方が保守しやすいし、時間毎に更新間隔も変えられる
56 = :
>>49
今、何分か(d.getMinutes()~の部分)だけを変えても意味がない。
「30分ごと=60分で2回」だから、d.getHours()の後ろに「2」をかけており、
「20分ごと」なら3を、「15分ごと」なら4をかける必要がある。
たとえば、こんな感じかな。
var ph=3;//1時間あたり、何回変更するか
document.writeln(msg[d.getHours()*ph+Math.floor(d.getMinutes()/60*ph)]);
ただ、柔軟性を考えると、条件式を書き換えて>>55 みたいにするのが無難かも。
57 = :
>>52>>55>>56
アドバイスありがとうございます
>>56
d.getHours()の後ろはやはり1時間の分割で良かったんですね
ただ、ここの記述が(d.getMinutes()>29 ? 1 : 0)])、これで30分なら
どう弄ったら15分、20分と変えれるのかとずっと頓挫してましたが、
>>55の方法は分かりやすかったので、こちらでやってみようと思います
アドバイスありがとうございました
58 = :
ランダムなあいつはどうなった
59 = :
ランダムなあいつは、そもそもどのブラウザでチェックしてんのかね?
こういった微妙なものは、ブラウザによって見た目が変わることが
結構あるんじゃないかな。
まずは、リセットcssをやってみてはどうだろう。
62 = :
ランダムなあいつです。
スレで頂いた御意見を参考に試行錯誤してたんですが、>>44さんの言うとおりhtml文での出力先でnoscriptと同じクラス指定したらあっさり解決しました。
いま考えればなんでやらなかったんだという感じです。
意味不明な質問から読み取っていただいた皆様、ありがとうございました。
あと複数のブラウザでのチェックはしてました。
本当にありがとうございました。
63 = :
そもそもjavascriptで実現できるかわからないのですが・・・
①外部のページを小窓で開き
②外部ページにあるテキストリンクをクリックすると
③こちらが管理してるページの特定のテキストボックスに、そのテキストリンクの内容が入る。
jqueryとかでも無理ですかね?
64 = :
無理
65 = :
innerHTMLをつかってサムネイルもしくはボタンクリックで
テキストボックスの中身を入れ替えるページをつくってるんですが、
(ここで解説しているような内容です→ ttp://homepage1.nifty.com/kodayan/dhtm/dhtml/text02.htm)
ボックス内のスクロールが下にあるままボックスの内容を切り替えると
切り替わったボックスのスクロールの位置も下に下がったままです。
この対応に苦戦してます。
scrollTopの対象はどうなるのですか?
というか、どうすりゃいいのかわかりませんorz
66 = :
真面目に調べてるのかねえ?
ふつうにscrollIntoViewでも使えばいいんじゃないかと思うが。
67 = :
jQueryのプラグインを探しています。
小さな正方形のイメージ(20px×20px程度)が横一列に10個程度並んでいます。
左側のボタンをクリックするとイメージ一個分左にずれ、
右側のボタンをクリックするとイメージ一個分右にずれる。
こーいう動作のjQueryプラグインはないでしょうか?
68 = :
もうさ、クリックしたらディスプレイずらしてもらえよ。
69 = :
javascriptでペッティングできますか?
70 = :
>>67
自分で作る気はないのか?
71 = :
>>66
サンクス
できました。
言い方はやな奴だけど、アドバイスに感謝します。
72 = :
・javascript
window.attachEvent("onload", function() {
var chg = document.getElementById('chgText');
var target = document.getElementById('eventSampleText');
chg.attachEvent("onclick", function() {
target.innerHTML = "CLICK";
});
});
・html
<input type="button" id="chgText" value="chgText">
<div id="eventSampleText">aaaiii</div>
上記のjsとhtmlで、「idがchgTextなボタンを押したら、idがeventSampleTextなdivのテキストが書き換わる」ということができるのまではいいんですが、
以下のjsを追記したとたんに動かなくなります。
var Human = function() {
this.var = "hoge";
};
this.varをthis.hoge などに書き換えると動くことから、予約語のvarを使っているのが原因だと思うのですが、
1.何故これだけで動かなくなるのでしょうか?jsを上から下へパースしていって、var Human...が現れる前までのjsにエラーは無いから、そこまでのjsは動作してもいいのでは?
2.attachEventの部分をaddEventListenerに書き換えてfirefoxで同じ検証をしたところ、var Human...が記述してあっても正常動作したのですが、やはりjsエンジンが違えば動作も異なるのでしょうか?
SpiderMonkeyでは、jsを上から下へパースしていって、エラーがある場所の前までのjsは正常動作するとか?
73 = :
firefoxのほうはエラーになってないんじゃね
75 = :
twitterの公式ウィジットを設置すると他のJSが誤作動を起こすんですが
どなたか対処法知りませんか?IE限定で勝手にオブジェクトに関数を代入してくる
76 = :
誤作動を起こす他のJSって何だ?
77 = :
>>76
それは自作の簡単なスクリプトです。
単純にオブジェクト名(テキスト)の配列使ってるだけなんですが
そこにファンクションを強制的に代入してきます。(IEのみ)
どのタイミングで代入してくるのかも目下不明です。
78 = :
オブジェクトだか変数だか詳細が分からないけど、
自分が宣言した名前がかぶってるんじゃないの?
名前変えてみたら
79 = :
>>78
とりあえず自分でも解決すべく調査中です。
名前の変更をしてみましたがだめでした。
DOM関係で特定タグのオブジェクト名を配列に格納するということをやっているので
そこらへんでDOMのオブジェクトをウジィットも操作していておかしくなるんじゃないかと
現状は考えています。
80 = :
IE8でも同じことが起こる?
起こるんだったらIE8の開発者ツール(F12で起動)使って、
ステップ実行してみたらわかるんじゃ?
81 = :
>>80
起きます。やってみます。
82 = :
自作のスクリプトが誤作動を起こすのに
自作の方を原因と疑わないのがすごいなw
84 = :
>>82
最終的にドル関数かもしれないですけどね
85 = :
すいませんIE9で以下のコードが動かないんですけど分かりませんか?
var i = 1;
alert(i);
86 = :
HTML側がいい加減なんだろ
89 = :
http://widgets.twimg.com/j/2/widget.js
どうもウィジットのこの部分が配列に代入されるのですが
コールバック関数というのですか?これが原因?
これIE関係するのかな????
if(!Array.forEach){
Array.prototype.forEach=function(D,E){
var C=E||window;
for(var B=0,A=this.length;B<A;++B){D.call(C,this[B],B,this)}
};
Array.prototype.filter=function(E,F){
var D=F||window;
var A=[];
for(var C=0,B=this.length;C<B;++C){
if(!E.call(D,this[C],C,this)){continue}
A.push(this[C])
}
return A
};
Array.prototype.indexOf=function(B,C){
var C=C||0;
for(var A=0;A<this.length;++A){
if(this[A]===B){return A}
}
return -1
}
}
90 = :
そこらへん拡張されて何か問題あんの?
配列でfor inとか使ってるとか?
91 = :
>>90
まだよくわかりませんが、これはコールバックだからこれが直接の原因じゃないですね
もう少し考えます。
92 = :
もうちょっとどういうスクリプトに対して
どういう誤作動があるのかきちんと書いてみ?
書いてることが少なすぎてわからん
93 :
>>90
たぶんご指摘のとおりだと思います。
「配列でfor in」しています。
何も入っていない配列のはずがコールバックに反応しているような
対処方法はありますか?
94 = :
for in つかうな。
配列なんだからlengthまで回す
95 = :
>>94
ありがとうございます。
勉強になりました。
96 = :
cookieの値を取り出してinputに突っ込むスクリプトだけど3行目で&&している意味がよくわからない
$("input[type=text]").each(function(){
var a=$.cookie($(this).attr("name"));
a&&$(this).val(unescape(a));
});
&&する理由は何ですか?
97 = :
aが空だったら、そもそもunescape呼ぶのが無駄だから効率のためじゃね?
98 = :
>>97
色々と調べてみたら短絡評価が行われることが分かりました
空文字はunescapeしても空文字なので無駄なだけなので許容できますが
nullやfalseを入れると文字列で"null","false"が返ってくるのでおかしなことになりますね
ありがとうございました。
99 = :
>>41
これってランダムになるか?
確率計算してなくね?
100 = :
乱数生成器使ってないからランダムとは言えないけど
擬似ランダムとでも言うか
ユーザからすればランダムっぽくは見えるだろうね
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.85 + (1001) - [97%] - 2011/4/25 21:32
- + JavaScript の質問用スレッド vol.81 + (1001) - [97%] - 2010/12/10 20:01
- + JavaScript の質問用スレッド vol.87 + (1001) - [97%] - 2011/6/21 6:33
- + JavaScript の質問用スレッド vol.86 + (1001) - [97%] - 2011/5/27 21:50
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/10/26 4:18
- + JavaScript の質問用スレッド vol.84 + (1001) - [97%] - 2011/3/30 7:32
- + JavaScript の質問用スレッド vol.83 + (1001) - [97%] - 2011/2/24 8:02
- + JavaScript の質問用スレッド vol.82 + (1001) - [97%] - 2011/1/19 7:54
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/11/15 20:32
- + JavaScript の質問用スレッド vol.89 + (1001) - [97%] - 2011/9/4 4:17
- + JavaScript の質問用スレッド vol.88 + (1001) - [97%] - 2011/7/20 7:03
- + JavaScript の質問用スレッド vol.130 + (1001) - [95%] - 2017/11/25 20:45
- + JavaScript の質問用スレッド vol.104 + (1001) - [95%] - 2013/1/28 4:00
- + JavaScript の質問用スレッド vol.103 + (1001) - [95%] - 2012/11/9 15:30
- + JavaScript の質問用スレッド vol.102 + (1001) - [95%] - 2012/9/11 17:30
- + JavaScript の質問用スレッド vol.120 + (1002) - [95%] - 2014/11/8 1:15
- + JavaScript の質問用スレッド vol.101 + (1001) - [95%] - 2012/7/16 14:15
トップメニューへ / →のくす牧場書庫について