私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.78 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
>>307
子作りデー
子作りデー
IEの挙動がよくわからん
position:absoluteで要素を重ねて置くと、下に隠れている要素のtextやborderだけが
上に見える要素のイベントリスナーを無視してマウスイベントを受け取るんだが
position:absoluteで要素を重ねて置くと、下に隠れている要素のtextやborderだけが
上に見える要素のイベントリスナーを無視してマウスイベントを受け取るんだが
なんとかScript側でIEを他のブラウザの動作に合わせられないものか・・・。
<html>
<head>
<title>test</title>
<style type="text/css">
textarea { width: 200px; height: 200px; margin-top: 200px; }
#red { border: solid 4px #000000; background-color: red; width: 50px; height: 50px; position: absolute; left: 50px; top: 50px; }
#red:hover { cursor: pointer; background-color: blue; }
#transparent { border: solid 4px #000000; width: 200px; height: 200px; position: absolute; left: 0px; top: 0px; }
</style>
<script type="text/Javascript">
window.onload = function() {
var t = document.getElementById("textarea");
document.getElementById("red").onclick = function () { t.value = "red Click\n" + t.value; }
document.getElementById("red").onmouseover = function () { t.value = "red Mouseover\n" + t.value; }
document.getElementById("red").onmouseout = function () { t.value = "red Mouseout\n" + t.value; }
document.getElementById("transparent").onclick = function () { t.value = "transparent Click\n" + t.value; }
document.getElementById("transparent").onmouseover = function () { t.value = "transparent Mouseover\n" + t.value; }
document.getElementById("transparent").onmouseout = function () { t.value = "transparent Mouseout\n" + t.value; }
}
</script>
</head>
<body>
<div id="red" style="position: absolute;">red</div>
<div id="transparent">transparent</div>
<textarea id="textarea"></textarea>
</body>
</html>
<html>
<head>
<title>test</title>
<style type="text/css">
textarea { width: 200px; height: 200px; margin-top: 200px; }
#red { border: solid 4px #000000; background-color: red; width: 50px; height: 50px; position: absolute; left: 50px; top: 50px; }
#red:hover { cursor: pointer; background-color: blue; }
#transparent { border: solid 4px #000000; width: 200px; height: 200px; position: absolute; left: 0px; top: 0px; }
</style>
<script type="text/Javascript">
window.onload = function() {
var t = document.getElementById("textarea");
document.getElementById("red").onclick = function () { t.value = "red Click\n" + t.value; }
document.getElementById("red").onmouseover = function () { t.value = "red Mouseover\n" + t.value; }
document.getElementById("red").onmouseout = function () { t.value = "red Mouseout\n" + t.value; }
document.getElementById("transparent").onclick = function () { t.value = "transparent Click\n" + t.value; }
document.getElementById("transparent").onmouseover = function () { t.value = "transparent Mouseover\n" + t.value; }
document.getElementById("transparent").onmouseout = function () { t.value = "transparent Mouseout\n" + t.value; }
}
</script>
</head>
<body>
<div id="red" style="position: absolute;">red</div>
<div id="transparent">transparent</div>
<textarea id="textarea"></textarea>
</body>
</html>
ページ中の特定の文字列の背景色を変更したいのですが
どのようにしたら良いでしょうか?
どのようにしたら良いでしょうか?
いや普通キャッシュされるだろ、と思ってソースコード見てみたら
あえてキャッシュが効かないようにしてるのか。
ライセンスはpublic domainって書いてあるから、
> $.get(url+"?"+(new Date()).getTime(),"",function(data,textStatus){
この行を
> $.get(url,"",function(data,textStatus){
に書き換えれば多分ブラウザにキャッシュされるようになる。
試してないけど。
あえてキャッシュが効かないようにしてるのか。
ライセンスはpublic domainって書いてあるから、
> $.get(url+"?"+(new Date()).getTime(),"",function(data,textStatus){
この行を
> $.get(url,"",function(data,textStatus){
に書き換えれば多分ブラウザにキャッシュされるようになる。
試してないけど。
Twitter APIの日付フォーマットが
"Wed May 26 13:48:16 +0000 2010"
っていう形なんですが、
これを
"2010-05-26 22:48:16"
(日本時間は+9時間後)
に変換したいです。
var str = eval("(" + "{time:'Wed May 26 13:48:16 +0000 2010'}" + ")").time;
str = str.replace(/\w+ (\w+) (\d+) (\d+):(\d+):(\d+) \+\d+ (\d+)/, "$1, $2 $6 $3:$4:$5 GMT+0900");
var dt = new Date(new Date(str).getTime() + (1000 * 60 * 60 * 9));
alert(dt.getFullYear() + "-" + (dt.getMonth()+1) + "-" + dt.getDate() + " " + dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds());
こんなに面倒なことをしなきゃダメですか?
"Wed May 26 13:48:16 +0000 2010"
っていう形なんですが、
これを
"2010-05-26 22:48:16"
(日本時間は+9時間後)
に変換したいです。
var str = eval("(" + "{time:'Wed May 26 13:48:16 +0000 2010'}" + ")").time;
str = str.replace(/\w+ (\w+) (\d+) (\d+):(\d+):(\d+) \+\d+ (\d+)/, "$1, $2 $6 $3:$4:$5 GMT+0900");
var dt = new Date(new Date(str).getTime() + (1000 * 60 * 60 * 9));
alert(dt.getFullYear() + "-" + (dt.getMonth()+1) + "-" + dt.getDate() + " " + dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds());
こんなに面倒なことをしなきゃダメですか?
>>325
evalがひどい…
まあ、それは置いといて、IE以外で良いなら
var dt = new Date('Wed May 26 13:48:16 +0000 2010');
でOK。IEも+の前にUTC入れるくらいで動くんじゃないかな。未検証。
evalがひどい…
まあ、それは置いといて、IE以外で良いなら
var dt = new Date('Wed May 26 13:48:16 +0000 2010');
でOK。IEも+の前にUTC入れるくらいで動くんじゃないかな。未検証。
>>325のevalって意味あるの?
>>326
ありがとうございます。
いろいろ試したら、"+0000"を"UTC"に変えるだけでいいみたいです。
ちなみにIEです。
(~略~)
var str = "Wed May 26 13:38:16 +0000 2010";
// 上は実際には下のように取り出す
// var str = eval("(" + $(this).attr("data") + ")").time; // JSON文字列を取得するのでevalしてtimeプロパティを取り出す
str = str.replace("+0000", "UTC");
var dt = new Date(str);
alert(dt.getFullYear() + "-" + (dt.getMonth()+1) + "-" + dt.getDate() + " " + dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds());
(~略~)
ありがとうございます。
いろいろ試したら、"+0000"を"UTC"に変えるだけでいいみたいです。
ちなみにIEです。
(~略~)
var str = "Wed May 26 13:38:16 +0000 2010";
// 上は実際には下のように取り出す
// var str = eval("(" + $(this).attr("data") + ")").time; // JSON文字列を取得するのでevalしてtimeプロパティを取り出す
str = str.replace("+0000", "UTC");
var dt = new Date(str);
alert(dt.getFullYear() + "-" + (dt.getMonth()+1) + "-" + dt.getDate() + " " + dt.getHours() + ":" + dt.getMinutes() + ":" + dt.getSeconds());
(~略~)
イベントリスナーってたえずイベントターゲットとイベントタイプを見張り続けているんですか?負荷が掛かるんですか?
(¬¬)ジー…→ イベントターゲット&イベントタイプ
↑
イベントリスナー
(¬¬)ジー…→ イベントターゲット&イベントタイプ
↑
イベントリスナー
ただのコールバック
見張り続けなくてよいようにイベントという仕組みがある
厳密に言えば、ハードやOSやブラウザがイベント対象を常に見張り続けてるから
イベント(コールバックの実行)が発生しなければそれ以上の負荷は起きない
見張り続けなくてよいようにイベントという仕組みがある
厳密に言えば、ハードやOSやブラウザがイベント対象を常に見張り続けてるから
イベント(コールバックの実行)が発生しなければそれ以上の負荷は起きない
>>331
どうもありがとうございますm(_ _)m
どうもありがとうございますm(_ _)m
巨大な画像を読み込むとき、
上から順にだんだんと表示されていったり、
白紙のページになり砂時計が出て、しばくらしたらぱっと画像がでてきたりします。
ブラウザの挙動によって異なるのか、画像形式によって異なるのかは調査中なのですが、
画像より後ろにあるソース(普通のテキスト文章など)の邪魔にならずに、
テキストは全て先に表示し、画像を読み込んでから別途表示するようにしたいのですが、
何かヒントをください。
画像読み込み中は、そこの部分に画像が出てくるよということを知らせるために、
ローディング%も表示したいのですがどのように実装するのかそれも併せてヒントいただけるとうれしいです。
上から順にだんだんと表示されていったり、
白紙のページになり砂時計が出て、しばくらしたらぱっと画像がでてきたりします。
ブラウザの挙動によって異なるのか、画像形式によって異なるのかは調査中なのですが、
画像より後ろにあるソース(普通のテキスト文章など)の邪魔にならずに、
テキストは全て先に表示し、画像を読み込んでから別途表示するようにしたいのですが、
何かヒントをください。
画像読み込み中は、そこの部分に画像が出てくるよということを知らせるために、
ローディング%も表示したいのですがどのように実装するのかそれも併せてヒントいただけるとうれしいです。
>画像より後ろにあるソース(普通のテキスト文章など)の邪魔にならずに
よくわからん。
画像の読み込みでレイアウトが変わらないようにしたい?? ならimgにサイズ指定
>ローディング表示
javascriptで実装しているのをおれは見たことがないな。
よくわからん。
画像の読み込みでレイアウトが変わらないようにしたい?? ならimgにサイズ指定
>ローディング表示
javascriptで実装しているのをおれは見たことがないな。
ローディング表示はXMLHTTPrequest使えばいいと思います
例えばこことか
http://developer.mozilla.org/Ja/XMLHttpRequest
ローディングの実装はGmailの読み込みとかがそれなのかな
例えばこことか
http://developer.mozilla.org/Ja/XMLHttpRequest
ローディングの実装はGmailの読み込みとかがそれなのかな
for(){ func() }
function func(){ /* hoge */ }
func();
function func(){ for(){ /* hoge */ } }
それぞれどっちがどうですか?何か良いこととか悪いこととかありますか
function func(){ /* hoge */ }
func();
function func(){ for(){ /* hoge */ } }
それぞれどっちがどうですか?何か良いこととか悪いこととかありますか
それだけで判断しろと言われたら後者
関数呼び出しはコールスタック云々で少なからずオーバーヘッドがある
実際には名付けることに意味を求めたり、必ずしもループが必要ではなかったり
ループ条件のパラメタで引数が煩雑になることを避ける等で前者を選ぶこともあり得る
関数呼び出しはコールスタック云々で少なからずオーバーヘッドがある
実際には名付けることに意味を求めたり、必ずしもループが必要ではなかったり
ループ条件のパラメタで引数が煩雑になることを避ける等で前者を選ぶこともあり得る
>>339-340
どうもありがとうございます
どうもありがとうございます
(function(f) {
return (function(g) {
return function(m) {
return f(g(g))(m);
};
})(function(g) {
return function(m) {
return f(g(g))(m);
};
})
})(function(f) {
return function(n){
return (n < 1) ? 1 : n*f(n-1);
};
})(10);
これでグローバル汚染せずに10の階乗が求められるらしいのですが
return functionだらけで意味が分からないんです
誰か解説してください
return (function(g) {
return function(m) {
return f(g(g))(m);
};
})(function(g) {
return function(m) {
return f(g(g))(m);
};
})
})(function(f) {
return function(n){
return (n < 1) ? 1 : n*f(n-1);
};
})(10);
これでグローバル汚染せずに10の階乗が求められるらしいのですが
return functionだらけで意味が分からないんです
誰か解説してください
function f1(str) { alert(str); }
f1("hoge");
f2 = function(str) { alert(str); };
f2("hoge");
この二つがほぼ同じ
var f3 = () { return function(str) { alert(str);}; };
f3()("hoge");
f3()の返値はf2と同じだから f2("hoge") と ( f3() )("hoge") も同じ
あとは自分で考えてくれ
f1("hoge");
f2 = function(str) { alert(str); };
f2("hoge");
この二つがほぼ同じ
var f3 = () { return function(str) { alert(str);}; };
f3()("hoge");
f3()の返値はf2と同じだから f2("hoge") と ( f3() )("hoge") も同じ
あとは自分で考えてくれ
>>342
無駄を省いていったらこーなった。
(function(n) {
return (n < 1) ? 1 : n * (function(m) {
return (m < 1) ? 1 : m * arguments.callee(m - 1);
})(n - 1);
})(10);
無駄を省いていったらこーなった。
(function(n) {
return (n < 1) ? 1 : n * (function(m) {
return (m < 1) ? 1 : m * arguments.callee(m - 1);
})(n - 1);
})(10);
てゆーか、これでいいのか。
(function(n) {
return (n < 1) ? 1 : n * arguments.callee(n - 1);
})(10);
(function(n) {
return (n < 1) ? 1 : n * arguments.callee(n - 1);
})(10);
やりたいこと:
自分のデスクトップに置いたファイル、
file:///myportal.htmlから、ある種のマッシュアップによる
俺様ポータルが作りたい。
フレームで他のページの美味しいところを混ぜ合わせるだけね。
Greasemonkeyでもできるっぽいけど、ブラウザの中をいじりたくない。
1、フレームでいろんなポータルをひとつのページに張り込んだとします。
よそのフレームの中のDOMツリーって、myportal.htmlの中のJavascript
から書き換えられますか?
2、フレームとフレームを、縦横分割じゃなく、上下に重ねられますか?
できれば、半透明合成で重ねあわせができるとうれしい。
3、どこかをクリックすると、フレームの中がフレームから独立し、
(独自のタブとかの)普通のページになる、、、というのはできますか?
自分のデスクトップに置いたファイル、
file:///myportal.htmlから、ある種のマッシュアップによる
俺様ポータルが作りたい。
フレームで他のページの美味しいところを混ぜ合わせるだけね。
Greasemonkeyでもできるっぽいけど、ブラウザの中をいじりたくない。
1、フレームでいろんなポータルをひとつのページに張り込んだとします。
よそのフレームの中のDOMツリーって、myportal.htmlの中のJavascript
から書き換えられますか?
2、フレームとフレームを、縦横分割じゃなく、上下に重ねられますか?
できれば、半透明合成で重ねあわせができるとうれしい。
3、どこかをクリックすると、フレームの中がフレームから独立し、
(独自のタブとかの)普通のページになる、、、というのはできますか?
>>348
んまあ、正しいんですが、
いろいろイジってみたいお年頃なんですよ。
とりあえず、
1、お気に入りのサイトの美味しい所を張り合わせる。
(ここまではSpeedDialでも可能)
2、それぞれのサイトのDOMツリーをmyportal.html内部のJavascript
から書き換えて、
自分なりにカスタマイズする。
「2」がやりたいんですよ。
もちろん、Stylish/Grease
でも可能ですが、myportal.htmlの<script>からじゃ無理?
別のフレームのDOMを見る方法ってないの?
んまあ、正しいんですが、
いろいろイジってみたいお年頃なんですよ。
とりあえず、
1、お気に入りのサイトの美味しい所を張り合わせる。
(ここまではSpeedDialでも可能)
2、それぞれのサイトのDOMツリーをmyportal.html内部のJavascript
から書き換えて、
自分なりにカスタマイズする。
「2」がやりたいんですよ。
もちろん、Stylish/Grease
でも可能ですが、myportal.htmlの<script>からじゃ無理?
別のフレームのDOMを見る方法ってないの?
アクセスできるというのは逆向きにアクセスされるってことでもあるからなぁ
ブラウザとしては許したくないだろうね
gmのunsafewindowがunsafeな理由もそのへん
ブラウザとしては許したくないだろうね
gmのunsafewindowがunsafeな理由もそのへん
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / 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
トップメニューへ / →のくす牧場書庫について