のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,475,961人
昨日:no data人
今日:
最近の注目
人気の最安値情報

私的良スレ書庫

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

元スレ+ JavaScript の質問用スレッド vol.87 +

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
301 : Name_Not - 2011/06/05(日) 01:10:48.83 ID:??? (+6,-29,-14)
new Image().src = 読ませるURL
302 : Perl忍者 - 2011/06/05(日) 01:11:12.45 ID:??? (+50,+27,-3)
消えて良いかな?
303 : Perl忍者 - 2011/06/05(日) 01:11:39.14 ID:??? (+52,+29,-3)
消えますよおおお?
304 : Perl忍者 - 2011/06/05(日) 01:13:09.39 ID:??? (+49,+24,+0)
さようなら
305 : Name_Not - 2011/06/05(日) 01:20:56.75 ID:??? (+13,-30,-42)
>>304
ばいばい

>>301
こんな感じでしょうか??
img=new Array();
img[]=new Image();
img0.src=0.jpg
||略
img11.src=ch.jpg

x=Math.floor(Math.random()*10)
document.hogehoge.src ="img" +x+".src"
306 : Name_Not - 2011/06/05(日) 01:26:47.83 ID:??? (+4,-30,-164)
>>305

function sh(images){
    for(var i = 0; i < images.length; i++) {
        new Images().src = images[i];
    }
}
//
img = ["./bunsen11-hp.png", "./evliyacelebi11-hp.jpg", "./houdini11-hp.jpg", "./persiannewyear11-hp.jpg"];
sh(img);
307 : Name_Not - 2011/06/05(日) 01:34:12.13 ID:??? (+64,+29,-12)
>>297
その程度か
308 : Name_Not - 2011/06/05(日) 01:47:37.81 ID:??? (-2,-30,-22)
ちょっと試してみてもエラーが出るので聞きたいのですが
javascriptで<dl id=xxx>~</dl>をidで取得した場合
その中にある<a>リンク、<dt>、文章とかも取得されるんでしょうか?
309 : 273 - 2011/06/05(日) 01:47:56.83 ID:??? (+3,-30,-118)
他の質問よろしくお願いします。

<p>
<span id="test">aaaa</span>
</p>

ここでidがtestのところを全部削除したいのですが、
要素を削除する適当な関数とかがremoveChild以外に見つかりません。

var test = document.getElementById('test');
test.parentNode.removeChild(test);

こういう感じに一度親までもどって子供を消すという手順でよろしいでしょうか?
なんか無駄が多い気がしますが。
310 : Name_Not - 2011/06/05(日) 02:05:31.61 ID:??? (+7,-29,-158)
if (evt.which==3) return false
で右クリックのコンテキストメニューを出さないようにしたいのですがOperaだとどうもうまくいきません
目的はワンクリックで進めていくゲームで特定の領域だけ右クリックを禁止状態にしたいです
あと「このページによる追加のダイアログ表示を抑止する」みたいなやつも出したくないのですが
(勢い余ってチェックいれてしまうとリロード=リセットしないときかなくなってしまうので)
なんかこのへんの情報ありませんでしょうか?
311 : Name_Not - 2011/06/05(日) 06:13:34.07 ID:??? (+15,-30,-144)
<form action="http://" method="GET">
<input type='hidden' name='aaa' value=''値">
<input type="text" name="q"> 
<input type="submit" value=" 検索 " onclick="Search();" />
</form>

このようなフォームでSearch()内でaaa を除外するにはどうしたらいいでしょうか
312 : Name_Not - 2011/06/05(日) 06:59:02.04 ID:??? (-2,-30,-23)
function Search() {
 xxx.submit();
}

やはりsubmitで削除は無理でしょうか

313 : Name_Not - 2011/06/05(日) 07:39:02.59 ID:??? (+63,+30,-172)
273氏

いいことを教えてやろう。

「プログラムが動いてるならそれ以上いじるな」

目的の動作をしているならそれでいい。何も不満などないだろう?
より良い方法を追求するのはいいことだが、それは動作を理解した上で、
リファレンスを眺めて「あ、こんなメソッドあったんだ」と気付くように
なってからの話。
そしてもちろん、リファレンスを眺めるなんて作業は、ここで質問する理由がない。
314 : Name_Not - 2011/06/05(日) 09:55:41.34 ID:??? (+59,+1,+2)
>>311
disabled
315 : Name_Not - 2011/06/05(日) 15:44:11.14 ID:??? (+65,-30,-78)
var a = [[1,2,3,4,,,,,9,,],[1,2,3,4,5,6,7,8,9,0,]];

この配列を文字通り文字列に変えるにはどうしたらいいでしょうか?
toStringではなく、[]も全て文字列にしたいのですが(evalで使えるような形)、
そういう手頃な関数とかありますでしょうか?
316 : Name_Not - 2011/06/05(日) 15:54:37.68 ID:??? (+31,-30,-36)
hoge.toSourceとかuneval(hoge)とか
317 : Name_Not - 2011/06/05(日) 15:56:13.49 ID:??? (+48,-30,-64)
javascript: Array.prototype.toString = function() {return "["+this.join(",")+"]";}; alert([[1,2,3,4,,,,,9,,],[1,2,3,4,5,6,7,8,9,0,]]);

よしよし、動いた動いた
318 : 315 - 2011/06/05(日) 16:19:32.30 ID:??? (+62,+29,-11)
>>316-317
どうもありがとうございます。
助かりましたー
319 : Name_Not - 2011/06/05(日) 16:21:39.41 ID:??? (+7,-30,-26)
>>315
JSON.stringify([[1,2,3,4,,,,,9,,],[1,2,3,4,5,6,7,8,9,0,]])
320 : Name_Not - 2011/06/05(日) 16:33:42.08 ID:??? (+10,-30,-59)
IE8だとtoSourceもunevalもJSONオブジェクトもナイ
>>317がよさそう
321 : Name_Not - 2011/06/05(日) 16:35:59.96 ID:??? (+78,+29,-117)
>>317
わざわざprototypeに突っ込む理由ないだろw
せめて myArrayToString() とかなんとか適当な関数名にしてやれよ。

>>315
警告しとくが、そんな発想でプログラムしてると「文字列化しておいたデータを
evalで戻すとかキチ○イに刃物」と罵られることになるぞ。

データを丸ごと文字列化しておきたい・文字列化したものをデータに戻したいってのは
誰でも考える(必要になる)ことだから、ちゃんとライブラリもある。
「JSON使え」がまともな回答。
322 : 315 - 2011/06/05(日) 16:45:03.55 ID:??? (+13,-29,-65)
>>319
ありがとうございます。こっちはnullも入れてくれるんですね。

>>320
たしかにおっしゃるとおりでした。エラーでました。

>>321
どんな発想かわかりませんが、
機密情報を含むセーブデータで実際はさらに圧縮したものをcookieに入れることになります。
サーバにも保存してキャッシュになかったらapplication/jsonで取得するようにしますが。
323 : Name_Not - 2011/06/05(日) 18:34:29.94 ID:??? (+57,+29,-30)
このスレ的にはもう少しまともに教えてやるべきなんだろうが、
生温かく放置して大惨事になるところを観察したい俺がいるw
324 : Name_Not - 2011/06/05(日) 18:54:12.59 ID:??? (+40,+6,-13)
機密情報をcookieに入れるなwwww
325 : Name_Not - 2011/06/05(日) 19:15:21.72 ID:??? (+3,-29,-36)
>>322
機密情報なら尚更安全にパースする必要がある
>>317は "hoge,foo" などが来た場合に適切にパース出来ない
326 : Name_Not - 2011/06/05(日) 19:27:08.23 ID:??? (+64,+28,+1)
>>314
遅くなりました
ありがとうございます
327 : Name_Not - 2011/06/05(日) 19:32:40.89 ID:??? (+76,-24,-13)
>>324
cookieは安全なんですが
328 : Name_Not - 2011/06/05(日) 20:04:38.10 ID:??? (+0,-29,-52)
>>310
preventDefaultじゃないの?
どちらにしろブラウザのオプションで簡単にブロックできるから設計を見直したほうが

>>320
JSONはあるよ
329 : Name_Not - 2011/06/05(日) 20:29:58.71 ID:??? (+69,+29,-61)
>>327
cookieに書き出すのはいいとして、ブラウザが「これcookieです」といって
渡してきたデータを無条件に「これ安全だよね」と信用できるなら
お前はその辺の新興宗教に洗脳される素養があるよ。
330 : Name_Not - 2011/06/05(日) 20:35:51.96 ID:??? (+92,+29,-20)
なんかずいぶん煽り気質のやつがいるね
キチガイだの新興宗教に洗脳されるだの
なんかリアルで嫌なことでもあったのか?
331 : Name_Not - 2011/06/05(日) 20:37:17.94 ID:??? (+57,+29,-44)
セッション管理でクッキー使った方が安全ならわかるが
普通にXSSでクッキー漏洩があるのに「安全」って何だろ
332 : Name_Not - 2011/06/05(日) 20:41:00.33 ID:??? (+21,-30,-73)
windowオブジェクトの拡張ってどうやるんですか?
StringとかArrayの拡張はよく見るんですが、
window.prototype.hogeとかWindow.prototype.hogeとかやってみたけどIEでエラーが出ます。
333 : Name_Not - 2011/06/05(日) 20:58:15.48 ID:??? (+62,+29,+0)
>>327
イントラなら安全かもね
334 : Name_Not - 2011/06/05(日) 20:59:03.24 ID:??? (+55,+27,-6)
いまどき専用鯖も持ってない雑魚はよくないですね。
335 : Name_Not - 2011/06/05(日) 20:59:39.09 ID:??? (+31,-29,-8)
俺はnew window();なんてコードは見たことないなぁ。
Elementのことか?
336 : Name_Not - 2011/06/05(日) 21:03:00.12 ID:??? (-2,-30,-50)
window.__proto__.hoge = 1;
alert(hoge);

__proto__ は持ってるみたいだね。
337 : Name_Not - 2011/06/05(日) 21:05:35.34 ID:??? (+3,-29,-48)
>>332
IE なら window.constructor でとれるけど、セキュリティ上の理由でprototype拡張は無理
338 : 332 - 2011/06/05(日) 21:08:38.71 ID:??? (+68,+29,-39)
>>335-337
IEで実装されてないいくつかの実装を拡張すればいいのにと思ってましたが、
セキュリティ↑の理由で無理なんですね。
どうもありがとうございました。
339 : Name_Not - 2011/06/05(日) 21:20:53.36 ID:??? (+75,+29,-81)
>>330
このスレに、evalでデータ戻すだのcookieに機密データだのという奴が来るのは仕方がない。

イヤなことがあるとすれば、それらに対してまともな回答のできない奴が
回答者気取りで刃物を渡してしまうことだな。
340 : Name_Not - 2011/06/05(日) 21:23:14.58 ID:??? (+12,-30,-47)
>>338
他ブラウザにあってIEにないwindowの機能、たとえばbtoaとかは

if (!window.btoa){ window.btoa = function(){/*実装*/}; }

とかで自分で用意できる。prototypeに入れようとする必要はない。
341 : Name_Not - 2011/06/05(日) 21:33:11.04 ID:??? (+31,+3,-19)
それだとフレームに対応できない、てことじゃねの
343 : Name_Not - 2011/06/05(日) 22:34:30.03 ID:??? (+6,-29,-16)
>>332>>337
Window.prototype.hoge じゃないの?
344 : think49 - 2011/06/05(日) 22:53:13.11 ID:??? (+7,-30,-67)
>>343
その手法が通るのは Firefox4 だけでは?

Window.prototype.hoge = 'hoge';
alert(hoge); // Fx4 は "hoge"

"Window" の名前が通るのも Fx だけかと。
345 : Name_Not - 2011/06/05(日) 22:54:24.72 ID:??? (+4,-30,-104)
>>342
globalにglobalStorageを置き
global.frames[0]、global.frames[1]がビュー集合
global.windowとglobal.documentが現在ビューと現在ドキュメント
こんな感じで良かったんじゃないかなあ
後方互換性を考えたとしてもglobal==windowである必要はなかったのに

W3C草案にタブがアクティブか調べるdocument.hiddenなんて出てたな
windowではなくdocumentに付けてるのが笑いどころ
あいつらもビューをどう扱ったらいいか分かんなくなってるっぽい
346 : Name_Not - 2011/06/05(日) 23:16:53.06 ID:??? (+3,-30,-59)
window.hiddenなんてもうけたら
今グローバルでvar hiddenしてるコードは全滅
だからdocumentにつけとく

そのていどの理由じゃね
と考えつつ、ビューでビュー制御できないってのもアホくせと思った
349 : think49 - 2011/06/05(日) 23:41:05.61 ID:??? (+3,-30,+0)
>>347
あー、ごめんなさい。IE8 の検証時には数値代入してましたが、String型の値を代入したら IE8 でもいけました。

window.constructor.prototype.hoge = 'hoge';
hoge; // "hoge"

ただ、セキュリティ上の理由があったのは Constellation さんから聞いた話なので確かだと思います。
過去試したときにはフレームを跨いで「グローバル変数」を実体化させる挙動を狙っていて(>342で取り上げられたように全てのフレームで btoa を使えるようにする、みたいな)それがセキュリティ上の理由で出来ないって話だったかと。
つまり、window.constructor.prototype.hoge を定義することによってフレームを跨いで window.hoge を定義する動作は出来なかったと思います。

>>348
衝突する場合は既存のプロパティが優先される仕様なんじゃないですかね。
過去、以下のようなケースの質問者さんに出会ったことがあります。

/* グローバルコード */
var name = [1, 2, 3]; // String型にキャストされるんだけど何故?→答え、window.name を初期化してるから
350 : Name_Not - 2011/06/06(月) 00:14:14.05 ID:??? (-15,-30,-196)
衝突なら
<form action="..."><input name="action">...
form.actionでaction属性がとれないと泣いてたのもいたな
form.getAttributeNode('action').valueで何とかなるが

オブジェクトのプロパティとしてノード名をまき散らすの、あれ害悪でしかねー
既存プログラムの救済だかなんだか知らないが、何でHTML5に入れちゃったんだ
ホント馬鹿じゃね
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について