12/04/20 15:39:52.05
>>215
は?
死ねのどこが脅迫罪なんだよ
死ねよ
220:Name_Not_Found
12/04/20 15:42:15.95
>>212>>219
どうでもいいから消えろ
221:Name_Not_Found
12/04/20 15:43:34.95
>>216
上にあるように200以外ではユーザスクリプトは実行されないはず
222:Name_Not_Found
12/04/20 15:46:19.82
>>221
問題なく実行はされています
200以外でもサーバーがtext/html等を吐けば実行されます
223:Name_Not_Found
12/04/20 15:47:17.84
403でも実行されてる
224:Name_Not_Found
12/04/20 15:48:14.88
>>222
503でhtmlが出力されてて、200と内容が異なってたら
とりあえず判定できるんじゃない?
225:Name_Not_Found
12/04/20 16:00:08.74
>>224
どういうことでしょうか?
1サイト1サイトのパターンを予め調べておくということでしょうか?
226:Name_Not_Found
12/04/20 16:04:15.33 +QWjWJGH
あー、ごめんなさい勘違いしてた
200以外の時にサーバが返すHTMLにJSを仕込むってことか
XHRを除くと、JSが触れるのはレスポンスボディの方だから
吐かれたHTMLの内容から判断するしかなくね?
返すHTMLを変更できるなら、head要素にでも書いておけばいいと思うよ
227:Name_Not_Found
12/04/20 16:07:01.40
>>225
対象のサイトが何種類あるかは知らないが、
ユーザスクリプトでHTMLの内容を調べて判定するしかないだろう
228:Name_Not_Found
12/04/20 16:07:06.95
>>225
あらゆるサイトで503返ったら再読み込み。みたいなのは止めといたがいいんじゃね
229:Name_Not_Found
12/04/20 16:12:06.37
対象が特定のサイトで、なおかつちゃんと時間をおいてから再読込
ならいいが、そういう話ではなさそうだ
230:Name_Not_Found
12/04/20 16:16:02.24
もちろん全てのサイトというわけではないのですが
今まで掲示板系の数サイトにinnerHTMLを使って
503~なんちゃら~
みたいなのにmatchさせて時間をおいてリロードするよう作って来ましたが、
この方法と新規対応をするのがなんだか気持ち悪くて、
もっと気持ちいい方法はないかと探して質問したのですがやはりないんですかね……
とてもとても残念無念です
231:Name_Not_Found
12/04/20 16:17:53.36
chrome権限のあるユーザースクリプトからなら、普通にステータスコード取得できるだろうけど
232:Name_Not_Found
12/04/20 16:21:45.11
>>231
和訳リファレンス調べた限りだと見つけることができませんでした
が、このあとforinで1つ1つ調べてみます……
233:Name_Not_Found
12/04/20 17:48:47.44
提供するAPIが無いから無理だろ
もう一段下の層に行けばaddTabsProgressListenerから
onStatusChangeが取れるから、そこでやれ
234:Name_Not_Found
12/04/20 21:55:36.53
>>233
どうもありがとうございます
調べて近日中に報告します
235:Name_Not_Found
12/04/21 17:10:05.73
報告マダー?
236:Name_Not_Found
12/04/21 20:09:19.66
ある画像を押したときに、
ボタンを押したときみたいに少しずらす方法がしりたいです。
onmousedownに下記の関数仕込んでもうまく動きませんでした。
function test(e)
{
var target;
if(document.all){
target=event.srcElement;
}else{
target=e.target;
}
target.setAttribute("margin-left","2px");
target.setAttribute("margin-top","2px");
}
237:Name_Not_Found
12/04/21 20:11:04.81
すいません
今のはギャグですので忘れてください
ありがとうございました
238:Name_Not_Found
12/04/21 20:32:37.03
すいません
続きです。
マウスアップ放したときに今度はボタンの位置を元に戻したいんですが、
クリックして、その対象のボタンの上からマウスカーソルが離れた状態でマウスアップすると、
キャプチャされないためmouseupイベントが発生してくれません。
なんかいい方法ないでしょうか?
239:Name_Not_Found
12/04/21 20:39:54.01
>>238
>>1を読んでjsfiddleに再現可能なコードをUPしてください。
240:Name_Not_Found
12/04/21 20:42:38.90
もう自力で対処したんでいいんです
君たちに俺の作業の手伝いをしてもらいたかっただけ
さよなら
241:Name_Not_Found
12/04/21 21:15:24.08
>>237,240
騙りなのか本人なのか知りませんが、非常に迷惑です。
242:Name_Not_Found
12/04/21 21:23:58.04
>>238
window.moveTo
243:Name_Not_Found
12/04/21 21:26:14.67
>>242
その程度では俺をだますことはできんぞカス
244:236
12/04/21 21:28:24.81
すみません、自己解決しました
245:Name_Not_Found
12/04/21 21:34:45.29
残念、質問者は句点を打つ人間だ。
騙るなら、ちゃんとやれ。
246:Name_Not_Found
12/04/21 21:48:56.32
>>244
死ね。
247:Name_Not_Found
12/04/22 00:56:11.73
JavaScriptではC言語のdefineに相当するものってあるのですか?
248:Name_Not_Found
12/04/22 00:57:50.52 z0KmCWev
なりすましてる奴もクズだが、質問者は特にID出した方がクリアになる。
知ってると思うがsageなければこの投稿のようにIDが出るんで
249:Name_Not_Found
12/04/22 01:06:00.87
>>1にメール欄を空欄にするといい、的なメッセージがあるといいかもね。
> (3) 長い間連続して質問する場合にレス番を名前にしてあれば、質問の流れが回答者に伝わりやすくなります。
250:Name_Not_Found
12/04/22 01:19:57.58 BnayIydg
>>247
>JavaScriptではC言語のdefineに相当するものってあるのですか?
定数のことか?それとも置換マクロのことか?
定数であれば、工夫すれば、書き換え不可(エラースロー)の変数作ることも可能だが(環境によるが、)
置換マクロはないな。
まぁ、どうしてもやりたいなら、鯖側でコンバートでもしてみてはいかが?
251:Name_Not_Found
12/04/22 07:29:32.31
const
252:Name_Not_Found
12/04/22 13:05:46.85
変なこと聞きますけど、
ある特定のサイトを持った糞野郎のIPアドレスを調べる方法ありますか?
253:Name_Not_Found
12/04/22 13:13:34.23
>>252
JavaScriptの質問をしてください。
254:Name_Not_Found
12/04/22 13:17:54.62
そいつが自分のブログに訪問してきたときに、
javascriptで絞り取れるだけの情報を搾り取ってIPを特定したいんです
無理ですか?
255:Name_Not_Found
12/04/22 13:28:02.23
>>252
var site = new Site("kuso");
console.log(site.getIPAddress());
256:Name_Not_Found
12/04/22 13:29:21.34
func unko(){
document.postform.elements["email"].value = "うんこ"
}
として、html側で関数unko()をよびだしてるんですが、上記の名前のpostformが複数あるとき動きません。複数あるpostfomの名前のフォームすべてにunko()で処理させるにはどのようにしたらいいのでしょうか?
257:Name_Not_Found
12/04/22 13:34:55.86
>>256
forループ
258:Name_Not_Found
12/04/22 13:36:17.61
無理だよな
もういいよ
259:Name_Not_Found
12/04/22 13:45:04.50
>>257
for (i=1;i<=5;i++){
document.postform.elements["email"].value = "うんこ"
}
としましたが、動きません。複数のpostformにうんこを入れるに
どうしたらいいのでしょうか?
260:Name_Not_Found
12/04/22 13:50:46.66
時刻が毎分30秒になるとalertするjavascriptを作りたのですが、どうすればいいでしょうか?
do whileで時刻==30秒になるとalertするのを作りましたが反応がありません。
261:Name_Not_Found
12/04/22 13:57:00.75
解決できたから、やっぱりいいわ。
262:259
12/04/22 14:03:00.77
マジでうごかないだけど、
にわかではなく、エロい人お願いします。
263:259
12/04/22 14:14:18.92
ごめん、自分で調べることにした。
264:259
12/04/22 14:25:48.52 MfOdCzzT
嵐うざい
265:Name_Not_Found
12/04/22 14:30:42.04
大野君に謝れ
266:Name_Not_Found
12/04/22 14:45:25.58
spanタグで囲まれた文字列をjavascriptで選択状態にしたいんですが、
inputタグのテキストエリアなどじゃないとselect()関数って使えないようなんです
どうにかしてspanタグで囲まれた文字列をjavascriptで選択状態にする方法ないでしょうか?
267:266
12/04/22 14:55:35.13
おい、さっさと教えろやハゲ
268:Name_Not_Found
12/04/22 15:04:14.89
2ちゃんのくせに短気すぎー。そもそも過去ログ全集見ればあるだろと。
269:Name_Not_Found
12/04/22 15:05:48.63
backgroundpositionってIE6にはきかないんですか?
270:Name_Not_Found
12/04/22 15:08:43.62
他のブラウザなら効くの? Pが大文字でないと駄目とかいう話じゃなくて?
271:Name_Not_Found
12/04/22 15:30:12.43
いや、setattributeで設定してもIE6と7では変化なかったもんで
272:Name_Not_Found
12/04/22 15:49:37.53
全部小文字で書くのやめれ
273:Name_Not_Found
12/04/22 15:51:46.70
もういいわ
じゃあな
274:259
12/04/22 16:52:40.57 MfOdCzzT
func unko(){
document.postform.elements["email"].value = "うんこ"
}
として、html側で関数unko()をよびだしてるんですが、上記の名前のpostformが複数あるとき動きません。複数あるpostfomの名前のフォームすべてにunko()で処理させるにはどのようにしたらいいのでしょうか?
宜しくお願い致します
275:Name_Not_Found
12/04/22 17:05:04.78
良識ある質問者なら卑語を交えた質問はしない。
定期的にその単語の質問が出るが荒らしと何も変わらないな。
276:Name_Not_Found
12/04/22 17:22:25.96
postformが複数あるのが悪い
馬鹿だな
277:Name_Not_Found
12/04/22 17:28:52.17
>>1のテンプレを下記のように変えてみてはどうでしょう。
(1) 質問にならない投稿はご遠慮ください。(煽り、コード制作依頼など)
↓
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。良識を持った大人として接して下さい。
278:Name_Not_Found
12/04/22 17:32:14.43
>>274
URLリンク(okwave.jp) を参照。
279:Name_Not_Found
12/04/22 17:42:58.91
selectタグのリストボックスの要素をクリックすると
inputタグのエディットボックスにその内容が入力される
ようにしたいのですが出来ません。
<html>
<script>
function select(){
obj = document._form._select;
href = obj.options[obj.selectedIndex].value;
document.getElementsByName('_txt').value = href;
↑うまくいかない
}
</script>
</head>
<body>
<form name="_form">
<input type='text' name='_txt' value='sss' size='20' />
↑このエディットの内容を選択したものに書き換えたい
<select name="_select" onChange="select()" size='2'>
<option value="URLリンク(www.yahoo.co.jp)">Yahoo!Japan</option>
<option value="URLリンク(www.google.co.jp)">Google</option>
</select>
</form>
</body>
</html>
280:279
12/04/22 17:47:32.77
なんだ単純なことでしたね。
HTMLの基礎が分かってなかったようです。
281:Name_Not_Found
12/04/22 17:53:49.45
>>280
HTML側の問題なんですか?
<head>が抜けてる以外自分には気づけません
282:279
12/04/22 17:56:48.31
自己解決しました
ありがとうございました
283:Name_Not_Found
12/04/22 18:01:28.31
あ、本当に自己解決しました
→document.getElementById("_txt").value = href;
レス消費してすみません
284:Name_Not_Found
12/04/22 18:04:53.63
>>283
出来ました。有難うございます
285:Name_Not_Found
12/04/22 19:02:39.09
sageじゃなくてもメ欄になんか入ってるとID出ないのか
286:Name_Not_Found
12/04/22 19:53:54.90 wGWpoRFr
aっていうjsファイルが一つ上の階層にあるとします
その階層には別のフラッシュファイルがあります。
aのjsファイルの中にコードを書いて、
そのフラッシュファイルを読み込む場合、
../フラッシュファイル
と書くのか、
aというjsファイルと同じ階層にあるので、
単純に、フラッシュファイル名だけ書けば読み込めるのかどちらでしょうか?
287:Name_Not_Found
12/04/22 20:01:21.73
alert(document.location.href)
288:Name_Not_Found
12/04/22 20:11:08.40
どちらか?と答えが2つまで絞れてるなら試せよ。
なぜ試さず質問する
289:Name_Not_Found
12/04/22 20:12:07.16
>>286
試すのが面倒ならフルパスで書けよ。
290:Name_Not_Found
12/04/22 20:12:30.64 wGWpoRFr
どちらでも動作しなかったので、どちらが正しいのか知りたいんです
291:Name_Not_Found
12/04/22 20:15:31.33
window.close()
292:Name_Not_Found
12/04/22 20:15:33.57
>>290
なら質問の仕方間違ってんだろ
なんだよ、引掛け問題でも出してるんですかコノヤロウ
293:Name_Not_Found
12/04/22 20:15:53.75
動作しなかったんならどっちも間違ってんだろ
294:Name_Not_Found
12/04/22 20:17:43.69 wGWpoRFr
ちっ
ここはクズしかいねーんだな
死ねよハゲ
295:Name_Not_Found
12/04/22 20:19:17.65
ちっ
ここはクズしかいねーんだな
死ねよハゲ
296:Name_Not_Found
12/04/22 20:23:01.58
質問者の態度がなってない
こんなクズには答えてやらなくて正解
297:Name_Not_Found
12/04/22 21:16:04.93
この掲示板は 嘘 ばかりですね
ここを 見 ていると、 は き気がします
いきなりIP 抜 いたと 嘘 ついて楽しい?
こんな 掲 示板にいるのは負 け 組み で す。
掲 示 板は知識を得 る 場所で あ り、遊ぶ所じゃない
匿名掲示 板 だからと言って 人 を傷つけ る のは最低です。
難 しい事 を 言ってるの で は無く、人 と して最低限の事
しか し 使 用者が事を な いがしろにし
自分は関係無 い とい う 幼稚な言 い 訳を続けてる
本当に最低 で す。ここ の 人は常識 と 良心が無いの?
わた し は こういうのは
コミニュケーシ ョ ンの形が間違ってると思う
も う こんな所は閉鎖するべき
298:Name_Not_Found
12/04/22 21:27:15.90
>>297
299:Name_Not_Found
12/04/22 21:37:17.67
>>286
_, ,_
w w w ( ・ω・ )
w w wwwwwww (~)、 / i )
w w wwwwww w w \ ` |_/ /|
w w w w `ー_( __ノ |
w w w w ( `( 、ノ
i _ノ`i__ノ
300:Name_Not_Found
12/04/22 21:55:32.20
今後このスレで質問しても回答してもらえそうにないな
もうつぶれちゃえよ
301:Name_Not_Found
12/04/22 22:00:27.06
>>299
302:Name_Not_Found
12/04/22 22:29:16.69
まっとうな質問なら問題なし。糞質問には糞解答しかつかない。非常に正しいね(w
303:Name_Not_Found
12/04/22 22:42:28.36
さて、今日も一人ダメ質問者を撃退した訳だが。
304:Name_Not_Found
12/04/22 22:48:50.45
var nodes=documebt.body.childNodes;
for(var i=0,len=nodes.length;i<len;i++){
alert(nodes[i]);
}
動かない…何が悪いの?
305:Name_Not_Found
12/04/22 22:49:51.76
質問の意図や前提をくみ取れない糞質問
が多い。それで回答者が逆質問をしたり
悪口を言ったりする。それを前もって思
い描く力が絶望的に欠如してるに違いない。
スーパーハッカーだけが意図を理解できる。
レアなそういう神が颯爽と登場する予感。
306:Name_Not_Found
12/04/22 23:07:15.58
質問するならID出せよ
307:Name_Not_Found
12/04/22 23:16:27.98
ID出してもお前らフルボッコにしたろ
もう誰も質問なんかしねえよハゲ
308:Name_Not_Found
12/04/22 23:16:57.36
ID出てない質問には答えるなよ
309:Name_Not_Found
12/04/22 23:25:50.14
ID出した質問は「うんこ野郎」と「どちらでしょうか?」だけだろ?
後者は質問者がどちらでもないって答え出してるし
310:Name_Not_Found
12/04/22 23:27:13.92
>>304
タイポ
311:Name_Not_Found
12/04/22 23:33:37.57
>>305
質
が
悪
い
ス
レ
312:Name_Not_Found
12/04/22 23:35:56.88
>>303
あなたみたいのがいるからスレが荒れるんだよ
313:Name_Not_Found
12/04/22 23:45:37.50
>>304
> var nodes=documebt.body.childNodes; for(var i=0,len=nodes.length;i<len;i++){ alert(nodes[i]); }
ReferenceError: documebt is not defined
314:Name_Not_Found
12/04/22 23:48:01.82
var documebt = new Document;
315:Name_Not_Found
12/04/23 00:17:41.99
>>314
TypeError: Illegal constructor
316:Name_Not_Found
12/04/23 00:24:56.33
ちゃんとタイプミスはタイプミスだと教えてもらえているじゃんねー。
317:Name_Not_Found
12/04/23 01:42:24.32
$("#t").css('background-color',"#ff33ff");
でidで背景色を変えるのをjQueryを使用しない場合
document.getElementById("t").style.backgroundColor="#ff33ff"
ですが、
$("div.aa").css('background-color',"#ff33ff");のような
<div class="a">の場合はどうやるのですか?
318:Name_Not_Found
12/04/23 01:57:51.63
覚える順序が逆だよなぁ…
319:Name_Not_Found
12/04/23 02:05:12.24
>>317
querySelectorAll, for, getElementsByTagName, getElementsByClassName
320:Name_Not_Found
12/04/23 02:48:12.72
getElementsByClassNameで探すしかない
321:Name_Not_Found
12/04/23 04:32:45.90
>>319
IEでは使えないけどXPath抜けてる
322:Name_Not_Found
12/04/23 05:19:20.33
じゃあquerySelectorとgetElementsByTagNameNSも
323:Name_Not_Found
12/04/23 06:45:32.68
document.body.innerHTML.replaceも
324:Name_Not_Found
12/04/23 08:17:37.67
document.getElementsByTagName("head")[0].appendChild(document.createElement("style")).appendChild(document.createTextNode("div.aa{background-color:#ff33ff}"));
こうでし
325:Name_Not_Found
12/04/23 08:20:00.82
>>323
innerHTML はお勧めしない。
326:Name_Not_Found
12/04/23 08:21:57.81
>>324
脳内計算ではstyle要素が挿入されないようなのだが…。
327:Name_Not_Found
12/04/23 08:25:20.50
>>324
それならdocument.stylesheet.cssRulesでinsertRuleしたほうがいいよね
328:Name_Not_Found
12/04/23 13:46:28.63 U+/ZS7af
DOMについての最新の解説本のおすすめを教えてください。
1冊丸ごとではなくてもいいです。
ざっと探してみたのですが、丸ごとだと最近は出てないような。
『JavaScript本格入門』の中の1章、あたりがいいところでしょうか。
テンプレにあるGecko DOM Referenceを今読みはじめています。
これより意味がある本があれば買いたいと思ってますが。
329:Name_Not_Found
12/04/23 14:00:30.20 4E4jSinV
クリップボードコピーに一番最適なライブラリを教えてください
330:Name_Not_Found
12/04/23 14:18:26.47
>>328
書籍で勧められるようなものはない 一度原典を気合いで読んでみたら
>>329
IEはさておき結局のところはFlashを経由するような外法しか無い
コピーなんてユーザーが勝手にやるから、Webページ側でどうこうしなくていい
331:Name_Not_Found
12/04/23 14:32:01.11
>>330
そうですか。どうもです。
本探しは止めて、Gecko DOM Referenceを読み急ぎます。
初iOSアプリを作るのですが、
Webアプリの素養自体はそれなりにあるので、
作るアプリに必要なとこだけつまんでいきたいと思います。
332:Name_Not_Found
12/04/23 14:34:02.34 4E4jSinV
>>330
それはわかってるんですが、
少しでもユーザに快適に使ってもらいたいなと思いまして。。
333:Name_Not_Found
12/04/23 15:27:57.65
>>332
余計なお世話ってやつじゃないか?
334:Name_Not_Found
12/04/23 15:35:47.94
わかりました
諦めます
ちっ
335:Name_Not_Found
12/04/23 15:55:32.93
「Ctrlキーを押しながらCを押すとクリップボードにコピーできます」
って毎回表示するようなものだ
ユーザを馬鹿にしすぎ
336:Name_Not_Found
12/04/23 18:26:11.72 bhqvXkeC
コピーの方はアレだけど
IEは文字列の選択に不自由なところがあるから
その辺をカバーする意味では無意味なものではないと思うよ
337:Name_Not_Found
12/04/23 19:27:34.52
URLリンク(www.w3.org)
338:Name_Not_Found
12/04/23 19:33:32.56
そんなレベルのドラフト貼られても何を言いたいのかわからん
339:Name_Not_Found
12/04/23 19:40:12.97
レスアンカのみ、URLのみは自信のなさの表れだからほっとけばいいよ
340:Name_Not_Found
12/04/23 19:49:38.08
>>339
341:Name_Not_Found
12/04/23 20:15:42.64
単にそういうAPIもあるよってことでしょ
342:Name_Not_Found
12/04/23 20:22:44.12
>>341
>>337ご本人降臨
343:Name_Not_Found
12/04/23 20:29:45.18
何がそんなに悔しかったのか
344:Name_Not_Found
12/04/23 22:04:06.72
JavaScriptの関数には引数としてFunctionオブジェクトを渡せるけど
他言語で言う、関数ポインタ、コールバック関数、デリゲートのような
専門の用語はあるんですかね?
345:Name_Not_Found
12/04/23 22:04:57.11
用語はないけど、関数とクロージャがあれば全部できるんじゃないの。
346:Name_Not_Found
12/04/23 22:14:11.67
説明するときに言葉が欲しかったんだよね
取り敢えず、関数ポインタ的とかコールバック的とかデリゲート的
みたいにお茶を濁すことにするよw
347:Name_Not_Found
12/04/23 22:14:25.45
javascript詳しくないんですが、サーバー上で実行しすると問題なく
動くんですが、ブラウザ上でそれが動くか確認したところ動きませんでした。
ソースを開いて、そのcgiのURIをくりっくしたら白紙なりました。
一体何が考えられるのでしょうか?apacheの設定でしょうか?
348:Name_Not_Found
12/04/23 22:17:34.05
>>1を読み直して、
何を動かそうとしたか詳しく書きなさい
349:Name_Not_Found
12/04/23 23:15:47.92
説明なら他の言語の何に相当するか言えば分かりやすくなるだろうね
350:Name_Not_Found
12/04/23 23:22:03.83
navigator.userAgentからOSだけを取得したいのですが、良い、パース方法ないですか?
351:Name_Not_Found
12/04/23 23:31:23.12
>>350
ある程度のパターンを持つしかないと思う。
/Windows/ とか /Macintosh/ とか /Linux/ とか。
352:Name_Not_Found
12/04/23 23:41:48.52
>>346
説明の仕方としてはどうとも伝わりやすい言い方でいいと思うけど
JavaScriptでは関数もオブジェクトだってことが伝われば
言い換えるまでもなく説明できる気がする。
あと、よくある
func(function(){...}); とか var func = function() {...};
みたいなときのFunctionオブジェクトは無名関数って言うから
それなら他言語でもわりと一般的だし、通じるんじゃないかな。
353:Name_Not_Found
12/04/24 00:55:51.45
関数はFunctionクラスのインスタンス、ただそれだけだ
(クラスがどうのこうのは無しの方向で)
354:Name_Not_Found
12/04/24 02:04:47.46
<script>
<!--
document.write("ほげ")
// -->
</script>
↑これが↓だとうまく動作しないのはなぜ?
<script><!--document.write("ほげ")// --></script>
355:Name_Not_Found
12/04/24 02:11:55.22
冗談で言ってるのか
356:Name_Not_Found
12/04/24 02:17:47.77
コメントとれ
357:Name_Not_Found
12/04/24 02:37:38.29
>>354
<!-- は、クライアントサイド JavaScript では一行コメントと解釈されるから。
358:Name_Not_Found
12/04/24 07:04:22.04
一行コメントという根拠は?
359:Name_Not_Found
12/04/24 08:18:58.10
HTML 4.01 の仕様書に書いてあるし、サイ本にも書いてあるし、
検索すれば最上位にヒットするんだけど…
URLリンク(www.w3.org)
The JavaScript engine allows the string "<!--" to occur at the start of a
SCRIPT element, and ignores further characters until the end of the line.
360:Name_Not_Found
12/04/24 08:20:08.81
>>358
>357じゃないけど、HTML5の仕様書を読むといいよ
361:Name_Not_Found
12/04/24 14:46:49.25
動物シリーズのプログラム本はぶっとい本よりわかりやすいな。頭にスーッと入ってくる
362:Name_Not_Found
12/04/24 22:32:01.31 SyErUAc9
IE6のJavascriptについて質問です。
location.href指定で画面遷移させる場合、
最後にreturn false;するのがお約束になっているようです。
このお約束についてMicrosoftやECMAなどが言及している資料はありますか?
個人ブログなどではない公式な根拠を求められていて困っています。
363:Name_Not_Found
12/04/24 22:35:34.40
return falseしなかったらどうなるん?
364:Name_Not_Found
12/04/24 22:50:32.61
var objApl;
var objFolder;
var objFolderItems;
var objItem;
var i;
objApl = new ActiveXObject("Shell.Application");
objFolder = objApl.NameSpace("c:\\ShortCut");
objFolderItems = objFolder.Items();
for(i=0;i<objFolderItems.Count;i++) {
objItem = objFolderItems.Item(i);
if (objItem.IsFolder==true) {
WScript.echo("D " + objItem.Name + " ModifyDate:" + objItem.ModifyDate);
} else {
WScript.echo(" " + objItem.Name +
" Size:" + objItem.Size + "Bytes ModifyDate:" + objItem.ModifyDate);
}
}
objItem = null
objFolderItems = null
objFolder = null
objApl = null
objFolder = objApl.NameSpace("c:\\ShortCut");の部分で、
「書き込みできません」とエラーが出るのは何故でしょうか
365:Name_Not_Found
12/04/24 22:52:29.72
>>362
アンカータグのonclickなどのイベントハンドラとして指定するとき?
366:Name_Not_Found
12/04/24 23:07:47.04 tO99VMos
>>362
ねーよそんなお約束は
もともとあった<a>要素に、クリックで別の機能を与えるときに
リンクが発火しないようにイベントを止める必要があって
そのためにreturn falseと書くことはあったかも知れんが
367:Name_Not_Found
12/04/24 23:13:08.97
IE6 だけ、return false しないと location.href より
anchor の動作が優先されてたってことなんだろうけど、
そんなもんに文書があるとは思えんな。
368:Name_Not_Found
12/04/24 23:17:15.63
>>364
ブラウザで実行すると確かに「書き込みできません」になるが、
その場合、WScript.Echo は使えないし、ホストがブラウザでなく、
WSH なら問題ないはず。環境がわからね。
369:Name_Not_Found
12/04/24 23:17:55.05
>>364
JScriptの話題はWSHスレのほうがいいと思う。
370:Name_Not_Found
12/04/24 23:23:54.09
$("$ss").hover(function(){ });
をjQueryなしで書き換えはどうやるのですか?
このマウスオーバーってJavascritptにあったんですか?
371:Name_Not_Found
12/04/24 23:28:39.33
$ssこれなんだよ
つーかjQueryの勉強しろよ
jQueryの勉強してからそれに対応する物探せよ
どっちも解りませんで丸投げするなや
#逆だろってツッコミ入りそうな気もしなくはないがw
372:Name_Not_Found
12/04/24 23:29:12.66
WSHのスレってなくなってないですか・・・?
373:Name_Not_Found
12/04/24 23:32:05.58
>>363,365-367
ご返答ありがとうございました。
おっしゃる通り、アンカータグでの話です。
<a href="javascript:void(0);" onClick="location.href='/foo/baa'">遷移</a>
このような書き方にすると、IE6のみ画面が遷移しない事象となります。
#IE8,9,Chrome,Firefoxは遷移しました。
374:Name_Not_Found
12/04/24 23:34:27.80
<a href="/foo/baa" onClick="location.href='/foo/baa'">遷移</a>
こうするべ。
375:Name_Not_Found
12/04/24 23:39:23.25
>>373
なるほど。<form>のonSubmitのreturn falseみたいなもんか。
376:Name_Not_Found
12/04/24 23:43:42.27
$("#ss").hover(function(){ }); でした。
そんなこと言わずに教えて下さい
377:Name_Not_Found
12/04/24 23:53:09.44
_, ,_ パーン
( ‘д‘)
⊂彡☆))Д´) >>376
378:370
12/04/24 23:53:51.21
自己解決しました。
379:Name_Not_Found
12/04/25 00:01:21.41
>>372
Windows板とプログラム板に一つずつ
380:Name_Not_Found
12/04/25 00:50:58.60
>>374
その書き方の場合リクエストが2回飛んできました。
IE6…恐ろしや…
381:Name_Not_Found
12/04/25 06:17:28.07
IE6にvoidはなかったとおもう。
function Void() {}
とかしておいて
href="javascript:Void();" しておけばいいんじゃね?
昔は href="#" のようなことしたおぼえがあるが…
382:Name_Not_Found
12/04/25 08:13:18.38
<a href="javascript:void(0);"
未だにこういう腐った書き方をする輩がいるのは何でなんだ
a要素が泣いてるぞ
383:Name_Not_Found
12/04/25 08:15:06.42
>>373
その return false はデフォルトアクション抑止であって location.href のおまじないではありません。
そもそも location.href を使用する必要はなく、href属性値を書き換えれば済む話です。
そもそもユーザに見えない形でリンク先を変更する理由はあるのでしょうか。
通常はHTMLベタ書きで対応しますし、後で書き換える必要があったとしてもアンカーテキストも含めて書き換えるべきだと思いますが…。
384:Name_Not_Found
12/04/25 08:17:59.59
新しいタブで開こうとしてホイールクリックしたらjavascript:void(0);が開いてイラッてなるんだよね、onclickで書くやつは新でほしい
385:Name_Not_Found
12/04/25 08:18:41.27
>>381
> IE6にvoidはなかったとおもう。
本当に?
IE6でundifined書き換えに対策するときにvoid使っちゃダメ?
386:Name_Not_Found
12/04/25 08:27:16.01
(function(undefined){return undefined})()
これでundefinedが返るよ!
387:Name_Not_Found
12/04/25 08:27:57.71
voidを関数だと勘違いしてやしませんか。組み込みの演算子だよね。 IE6もいちおう
ECMAScript3互換といっていたはずなので、文法に定められている演算子が足りないとか
あり得ないと思うけど、、、(手元にないんで試せないけど)。
388:Name_Not_Found
12/04/25 08:29:05.51
var undefined; // simple is best.
389:Name_Not_Found
12/04/25 08:30:11.85
>>388
変数宣言すると上書きできる
390:381
12/04/25 08:45:45.05
>>385
ごめ、しらべたらあった。>void
Voidなんとかはわすれてくれ。
やはり # か 説得して return false; かね。
391:Name_Not_Found
12/04/25 09:25:26.36
const undefined;
392:Name_Not_Found
12/04/25 12:13:17.67 zGStRhet
>>376
jQuery以前からJSやってる諸兄は、みな自前のhoverをもってて
色々なパターンがあると思うけど、多くの場合は
・mouseover、mouseoutイベントで発火するのが基本
・mouseoutした先の要素との親子関係と重なりを考慮
というようにしているよ
とりあえず前者だけでやってみるといいよ
で、すぐに「これはmouseoutにしてほしくない!」て状況になると思うから
そしたら、後者の方を考えるといいよ
393:376
12/04/25 21:53:12.21
すみませんが。
サッパリ伝わらない回答はお控え願います
394:Name_Not_Found
12/04/25 22:07:09.57
>>376
すみませんが。
サッパリ伝わらない質問はお控え願います
395:Name_Not_Found
12/04/25 22:26:40.78
>>393
イベントハンドラ
URLリンク(www.tohoho-web.com)
この辺見ればいいんじゃね?
396:Name_Not_Found
12/04/25 22:42:23.80
XMLHttpRequestでxml持ってきてreadyStateが4になったら
alertでresponseText表示ってajax的なことやってみたら、
IE9だと正常動作したもののsafariだと"JavaScript"って吐いた。
サーバに上げて同じく実行したら、safariはサーバのドメイン名吐き出した。
なんでsafariさんはこんな動作するのかしら。
397:Name_Not_Found
12/04/25 22:43:27.90
ソースは?
398:Name_Not_Found
12/04/25 22:46:48.93
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET",url,"True");
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState == 4){
alert(xmlhttp.responseText);
var domDoc = xmlhttp.responseXML;
}
}
こんなん。邪魔だったからxmlhttp.starusは消してた
399:Name_Not_Found
12/04/26 05:00:50.45
CSSの:after擬似要素をjavascriptから操作するにはどうしましょうか
400:Name_Not_Found
12/04/26 05:10:14.02
jQueryのマニュアルをすみずみまで読む
401:Name_Not_Found
12/04/26 07:02:24.25
>>398
こんなんでなく、ちゃんと確かめて実際のコードを書いて
第三引数が明らかにおかしいから多分書き方が間違ってる
402:Name_Not_Found
12/04/26 08:20:17.88
>>393
自分の理解不足を他人のせいにしてはいけません。
403:Name_Not_Found
12/04/26 09:07:25.79
質問者に伝わらない回答に何の意味がある
404:Name_Not_Found
12/04/26 09:32:24.30
勉強する気の無い奴に何言っても無駄
405:Name_Not_Found
12/04/26 09:59:35.57
回答者も新しい情報を仕入れるためにこのスレに来ている面も多かれ少なかれあるだろう
いまいちな質問ばかりだと、なあ
406:Name_Not_Found
12/04/26 11:18:01.97
だってハイレベルな質問するとすぐ議論論争に発展して問題になるかスルーされるかの二択でしょ?
そりゃあ質問者も空気を読んでイマイチな質問するしかないよ!
407:Name_Not_Found
12/04/26 11:22:00.99
議論になるのは正解の内質問であってハイレベルかどうかは関係ないんだがな。
ハイレベルな質問には回答できる人が少ないから答えられずにスルーされるか一部の有識者が回答することになる。
だからこのスレ的にはハイレベルな質問をして困ることはない。
408:Name_Not_Found
12/04/26 11:27:05.85
お前新参か?
ハイレベルな質問の回答にはケチがついてそこから揉めるっていうのがいつものパターンだろ
409:Name_Not_Found
12/04/26 11:35:43.45
>>408
そんなことはなかったと思うが。
少なくとも今までもめた質問でハイレベルな質問はなかった。
410:Name_Not_Found
12/04/26 11:41:09.46
ハイレベルなんて人それぞれだろ
俺の場合、このスレですげーと思った質問はほとんどないぞ
411:Name_Not_Found
12/04/26 11:48:09.83
>>409
ハイレベル=抜群に正しい回答をしにくい質問
ってことだろ。
二人の考えにそう相違はない。無駄な事でまた喧嘩しあうな。
412:Name_Not_Found
12/04/26 12:25:11.78
ハイレベルって何だよ
エスパーにしか推理できない糞質問のことか?
413:Name_Not_Found
12/04/26 13:17:55.53 9g4O6I+1
コミュニティから抜粋
336 名前:あげあげ坊主 投稿日:2012/02/24(金) 10:08:32 HOST: FLH1Aj137.hkd.mesh.ad.jp
自動ネット収入システム「AUTOWEBMONEY2」スペシャルリミテッドの裏技みっけた
自動検索ネットワークON、リトライ復元モードOFF、自動カスタマイズシステムON、
セキュリティモードOFF、サーバートランスモードON、自動構築モードOFFにしてから作動させて、
15分くらい放置したあとに自動構築モードONにすると面白い事になる!
(画像)あっという間に・・www
425 名前:アゲハ蝶 投稿日:2012/02/24(金) 10:45:50 HOST:pl39.nas811.p-wakayama.nttpc.ne.jp
>>336
うぎゃあああああああああああああすげええええええええ
あっいう馬に金貯まるんだがwww
477 名前:ネコ 投稿日:2012/02/24(金) 11:35:22 HOST:p8146-ibfp504yamaguchi.yamaguchi.ocn.ne.jp
>>336
ネ申 wwwwww28万www
488 名前:はるき 投稿日:2012/02/24(金) 12:01:35 HOST: KD1140178234.ppp-bb.dion.ne.jp
>>336
キタ━━(*´・ω・)^ω^)´∀`)´Д`)´ー`)゚∀゚)'A`)゚Д゚)━すげー32マソ━ !!!
600 名前:425 投稿日:2012/02/24(金) 13:20:02 HOST: pl39.nas811.p-wakayama.nttpc.ne.jp
一時間で16万!!www最高記録か!?w バグ?いいのかこれ?いうなよwww
414:399
12/04/26 14:42:57.10
ちょっとjQuery見ても分からんわー
ハイレベルな質問過ぎて分からんわー
415:Name_Not_Found
12/04/26 14:47:20.26
ご苦労。
styleタグを書き足すしかないのではないか?
416:Name_Not_Found
12/04/26 15:05:57.41
>>410
このスレではないが、こういう質問は面白いね。
URLリンク(okwave.jp)
417:Name_Not_Found
12/04/26 15:36:30.66
おもしろいがこんなことが気になるのって変態的だよな
418:Name_Not_Found
12/04/26 15:59:11.53
ipadのSafariとdraftpatを連携させるブックマークレットを考えています。
画面上で選択したものをある程度整形してから、draftpadに渡したいのです。
javascript:
h=location.href;
document.addEventListener('gesturechange',function(){s=window.getSelection();
if(s!='')location.href='draftpad:///insert?
replaceを使って選択範囲の整形をする場合、
どのようにしたらいいでしょうか。
御教示お願いいたします。
419:Name_Not_Found
12/04/26 16:06:03.32
JavaScript のクロージャの理解は、むしろ基本的だし重要なことだと思うよ。
既存のページに組み込んだり、いろんなスクリプトを組み合わせて使うためには、名前空間の汚染を防ぐのは重要だよね。
420:Name_Not_Found
12/04/26 17:00:52.34
文字列をブラウザに出力すると
=""
という謎の文字列が文字列間に挿入されることがあるんですが、原因は何でしょう?
エスパー回答お願いします
421:908
12/04/26 17:01:21.13
クロージャって使いまくってるぜ。
滅茶苦茶便利やんクロージャ。
422:Name_Not_Found
12/04/26 17:15:51.61
使いまくりはよくねーな
423:Name_Not_Found
12/04/26 17:26:19.91
>>420
今、テレパシーで回答した。
424:Name_Not_Found
12/04/26 17:43:55.83
jsって実は、オブジェクトリテラル使ってvar hello={};
っとかでhelloオブジェクトにあらゆる値が格納可能だから、
グローバル変数が1コで済むんだよな。
初心者には何言ってるか分からんと思うけど。
425:Name_Not_Found
12/04/26 17:58:29.11
>>418
そのコードってreplaceで処理したい内容と直接関係なくない?
どういう判断なのかコード途中で終わってるし、なんにせよ問題を切り分けて質問した方が。
一応これ↓
URLリンク(developer.mozilla.org)
426:Name_Not_Found
12/04/26 18:01:10.73
>>424
オブジェクトリテラルは関係無くね?
var hello = new Object();
でも良いわけだし。
書きやすいってだけだろ。
427:Name_Not_Found
12/04/26 18:01:54.12
forループ内でsetTimeout/setIntervalを呼ぶときには使う
428:Name_Not_Found
12/04/26 18:03:16.93
>>424
他を汚さないという意味ではいいんじゃない?
429:Name_Not_Found
12/04/26 18:28:46.50 PXIqKkIS
>>427
クロージャの使い方を知りたいのでコード書いてくれませんか?
変数名を保護できるという利点は理解できました。
430:Name_Not_Found
12/04/26 18:34:32.41
ググったらすぐ見つかるよ
分かってるならあと少しだ
431:Name_Not_Found
12/04/26 19:08:55.57
>>429
<body>
<div id="w01">ここをクリックとalertが出てくる</div><br><br>
<div id="w02">ここをクリックとalertが出てくる</div>
<script type="text/javascript">
var Slider=function(kp){this.pp=kp;};
Slider.prototype.init=function(popo){var cnt=popo;
document.getElementById(this.pp).onclick=function(){alert(cnt);cnt++;}};
var aa=new Slider("w01");
aa.init(0);
aa=new Slider("w02");
aa.init(0);
</script></body>
432:431
12/04/26 19:18:04.06
>>429
クロージャってのは関数の中に関数がある
こんな感じで、cntの値を書き換えていく。
クロージャ使うと、「id=w01とw02を押した時に出るalert
が1ずつ加算されてく」とかのプログラムが可能。
newとprototypeと共に使って、id=""が何個増えても
var aa=new Slider()でnewで関数呼び出すと、
変数がaaのただ1つで済む。
433:Name_Not_Found
12/04/26 19:44:39.68
クロージャの利点と変数がただ一つで済むのは関係ないだろ
つーか読みにくすぎるぞ
全角スペース使ってのインデントと改行ぐらいしろよ
434:Name_Not_Found
12/04/26 19:46:11.79
わざとだよ言わせんな
435:Name_Not_Found
12/04/26 19:49:33.20
その使い方なら
そもそも変数要らねんじゃね?
var Slider = function (kp) {
var cnt = 0;
document.getElementById(kp).onclick = function () {
alert(cnt);
cnt++;
};
};
new Slider("w01");
new Slider("w02");
436:Name_Not_Found
12/04/26 19:55:58.08
(function (kp) {
var cnt = 0;
document.getElementById(kp).onclick = function () {
alert(cnt);
cnt++;
};
return arguments.callee;
})("w01")("w02");
437:Name_Not_Found
12/04/26 19:59:49.80
>>435
newする意味あるの?
438:427
12/04/26 20:00:05.26
>>429
まず、これで何が表示されるかという話だよな
for (var i = 0; i<5; i++) {
setTimeout(function() {
alert(i);
},1000);
}
439:Name_Not_Found
12/04/26 20:01:21.75
0が1回表示されて終わりじゃね
440:Name_Not_Found
12/04/26 20:05:13.57
いや5回表示されるだろ。
441:Name_Not_Found
12/04/26 20:09:24.76
setTimeoutの中が実行されるときはすでにi=5になってるから5がループの数5回表示される
442:Name_Not_Found
12/04/26 20:10:59.42
>>438
それ書くならこっちも書いとこうよ
for (var i = 0; i<5; i++) {
setTimeout(function(i) {
alert(i);
}(i),1000);
}
443:Name_Not_Found
12/04/26 20:12:43.20
>>442
なんじゃそれ
444:Name_Not_Found
12/04/26 20:24:26.81
>>437
thisなくした時点で
要らねーなw
445:Name_Not_Found
12/04/26 20:27:38.16
>>436
面白いとは思うがそこまで行くとちょっと使いづらいな
関数のままでいい
446:427
12/04/26 20:29:04.06
続きは>>429を名乗る人が現れてからと思っていたが、
待たずに別解を書いておこう
これだと>>442と違ってsetTimeoutの外に他の処理も書ける
for (var i = 0; i<5; i++) {
(function(ii) {
setTimeout(function() {
alert(ii);
},1000);
// ここに他の処理
})(i);
}
さらに、上記のように変数名を変えると理解しやすいかもな
同じ変数名でも別物だから正しく動作するが
447:431
12/04/26 20:56:18.28
そういや
(function() {
処理
})()
ってたまにみるが、いまいちわからん。解説頼みます。
448:Name_Not_Found
12/04/26 21:15:48.27
>>447
関数を即時実行するために()をつけてる
function () {}()
これは実行できない
!function (){}()
(function () {})()
(function () {}())
ここいらは先頭がfunctionで始まってないから実行できる
449:Name_Not_Found
12/04/26 21:19:11.11
人が入れ替わったのか、古参は眺めてるだけなのか…
450:Name_Not_Found
12/04/26 21:25:41.14
通常は再利用しやすいように変数に参照させておくだけ
(function() {処理})()
これを
a = (function() {処理})
として置き換えると
a()
となるわけだ
function() {処理}
に括弧を付けるのは
式はfunctionというキーワードから
始められないようになっている。
つまり関数式と関数定義の混同を避けるためだな。
451:Name_Not_Found
12/04/26 21:27:12.30
分からずに>>431>>432を書いてたのか…
452:Name_Not_Found
12/04/26 21:31:05.29
今は昔と違って良書色々有るんだから勉強しろよ
453:Name_Not_Found
12/04/26 21:31:45.81
ここIDで出ないからレスの繋がりわかりにくいな
454:Name_Not_Found
12/04/26 21:36:15.61
_, ,_ パーン
( ‘д‘)
⊂彡☆))Д´) >>442
455:Name_Not_Found
12/04/26 21:47:39.49
>>454
殴る理由を聞こうか
456:Name_Not_Found
12/04/26 21:51:31.57
>>448
>>450
サンクス
>>450
自分の書けるコードの別の書き方って複数あるだろうから、
知らんのもあるさ。
431はprototypeとnewとonclickとクロージャと使うって縛りで
書いたコードだった。
457:Name_Not_Found
12/04/26 21:55:44.79
>>455
衝動
458:Name_Not_Found
12/04/26 22:29:19.63
>>442は
>>429が自分で調べて答えを導き出すチャンスや楽しさを奪った罪が大きい
459:Name_Not_Found
12/04/26 22:35:48.66
いや、全然奪ってないし。
460:Name_Not_Found
12/04/27 00:11:54.60
全然クロージャでもないし即時実行してるだけなんだがw
そもそもsetTimeoutすら関係ないっていうね
書いた後見返して気付いた事だがw
461:Name_Not_Found
12/04/27 00:19:04.49
結局クロージャも水の泡か
462:Name_Not_Found
12/04/27 00:36:59.35
なんかネタな~い?
463:Name_Not_Found
12/04/27 00:40:09.51
new function()の使い方教えて下さい。
ぐぐっても出てこないもので。
464:Name_Not_Found
12/04/27 00:48:36.54
一度しか使わせない
コンストラクタじゃねーの?
465:Name_Not_Found
12/04/27 03:53:36.22
取り越しクロージャだったな
466:Name_Not_Found
12/04/27 06:43:09.68
>>461>>465
467:Name_Not_Found
12/04/27 07:07:54.80
アナログ描画入門を見たな
468:Name_Not_Found
12/04/27 07:37:33.02
kwsk
469:Name_Not_Found
12/04/27 07:49:58.35
クロージャではないが、汚染を防ぐのに便利だ
470:Name_Not_Found
12/04/27 15:15:02.38
>>425
すいません、途中できれてました。
こんなbookmarkletです。
iOS系で使いたいなと考えているんですが・・・
javascript:h=location.href;
document.addEventListener('gesturechange',function(){=window.getSelection();
if(s!='')location.href='draftpad:///insert?after='+encodeURIComponent('\n'+s+'\n');
});
動作は、
Safariで表示している部分を選択してから、
複数の指でタップすると選択分をdraftpadへ改行付きで渡します。
どうせ渡したあとでいじるなら、
draftpadに渡す前にs=s.replace(/ /g ,",");などを使って、
選択中の文字列の中から連続スペース「 」を「,」に置換したいのです。
変数sの中の文字列を置換する方法がありましたら、
御教示お願いいたします。
471:Name_Not_Found
12/04/27 15:16:41.63
draftpadに渡す前にs=s.replace(/ /g ,",");などを使って、
選択中の文字列の中から連続スペース「 」を「,」に置換したらいい
472:Name_Not_Found
12/04/27 15:50:18.06 ae0ARIH3
>>449
100スレ目に入ったら
何か気の利いたことを書いてドヤ顔しようと
そわそわしています
473:Name_Not_Found
12/04/27 15:59:21.43
質問の意図や前提をくみ取れない糞質問
が多い。それで回答者が逆質問をしたり
悪口を言ったりする。それを前もって思
い描く力が絶望的に欠如してるに違いない。
スーパーハッカーだけが意図を理解できる。
レアなそういう神が颯爽と登場する予感。
474:463
12/04/27 17:18:04.90
なんか適当なnew function のサンプル貼ってください
475:Name_Not_Found
12/04/27 17:21:07.66
new function() {} なのか new Function() なのか
476:Name_Not_Found
12/04/27 17:26:01.94
>>474
function#bindを実装する場合なんかは便利だね。
477:Name_Not_Found
12/04/27 17:29:59.99
>>463>>474
javascript "new function"
をググれカス
478:Name_Not_Found
12/04/27 18:15:41.14 YDT3BfOf
連想配列からキーを検索する関数の書き方が分かりません。
配列じゃないので難しいです。たとえば、こんな感じで動かしたいです。
var data = { a:0, b:1, c:2 };
var key = getKey(data, 1); // 'b'
479:Name_Not_Found
12/04/27 18:36:23.43
>>478
重複したらどうするの?
480:478
12/04/27 18:40:38.77 YDT3BfOf
最初のキーを取得したいです。
481:Name_Not_Found
12/04/27 18:53:20.87
やっぱfor-inで走査照合するしかないのかな。
逆引きハッシュをあらかじめ作っておく手もあるか。
482:Name_Not_Found
12/04/27 20:31:13.10
>>478
データの内容からオブジェクトの名前を取得するという構造がおかしいわ。
それならデータの内容を名前にしたオブジェクト名の配列を用意するべき。
483:Name_Not_Found
12/04/27 20:58:25.13
連想配列の扱い方が分かってないだけじゃん
回答する必要なし
484:Name_Not_Found
12/04/27 21:01:34.83
なにこの仕切り屋さん。
485:Name_Not_Found
12/04/27 21:21:26.67
逆引きハッシュを維持するに1票。
486:Name_Not_Found
12/04/27 22:15:11.14
全部ひとつのオブジェクトの中に入れちゃえ
487:Name_Not_Found
12/04/27 22:54:27.50
>>482
オブジェクトというよりハッシュ的に使いたいんだろ。
例えば氏名をキーに年令を格納とか。
488:Name_Not_Found
12/04/27 22:56:58.56
>>482
なにいってんの?その手の処理はよくあるから。
489:Name_Not_Found
12/04/27 22:59:31.24
>>202 禿同。全部同じ奴なのかねえ。
490:Name_Not_Found
12/04/27 23:27:34.76
Objectオブジェクトは連想配列の完全な代用にはならないから注意しろ。
491:Name_Not_Found
12/04/27 23:30:12.39
「重複したら最初のキーを取得したい」ってのがねー「最初」ってのがねー
やっぱり、データと名前が逆だわ。他に方法ないでしょ。
492:Name_Not_Found
12/04/27 23:33:42.18
どのAPI見ても普通は最初のキーを返すぞ。
結果によって文字列だったり配列だったり、そりゃないわ。
493:Name_Not_Found
12/04/27 23:40:35.68
基本的にはこう。
var getKey = function(obj, value) {
for (var key in obj) {
if (obj[key] === value) {
return key;
}
}
return null;
};
var getKeys = function(obj, value) {
var keys = [];
for (var key in obj) {
if (obj[key] === value) {
keys.push(key);
}
}
return keys;
};
494:Name_Not_Found
12/04/27 23:47:20.10
それだと任意(の順)のキーが返ってくる
495:Name_Not_Found
12/04/27 23:49:12.68
>>494
どゆこと?正しいコード書いてみて。
496:Name_Not_Found
12/04/28 00:01:18.91
そもそもオブジェクトに順序は関係ないと思うが
497:Name_Not_Found
12/04/28 00:01:45.73
>>495
プロパティの順番は保証されてないから
キーの順番に意味があるならその順番を保持していないといけない
498:Name_Not_Found
12/04/28 00:07:58.48
>>497
矛盾してるよ。順番は保証されてないのにキーの順番に意味があるわけが無い。
499:Name_Not_Found
12/04/28 00:10:22.00
キーの順番に意味があるなら、
その順番を別途保持していないといけない
ってことだろ?
ちゃんと分かるように書け&分かれ
500:Name_Not_Found
12/04/28 00:38:54.05
>>491
本人がそれを望んでるんだから、それでいいじゃん。
そこまでケチを付けるのか。
501:Name_Not_Found
12/04/28 01:00:18.21
やっぱレベルが低すぎる。リア中かと思うわ。
データに重複がある場合、返ってくるキーがどれでもいいのなら
for(var key in obj) {
if ( obj[key] == data ) {
}
}
502:Name_Not_Found
12/04/28 01:03:27.93
途中送信しちゃった。もういいや。
503:Name_Not_Found
12/04/28 01:19:11.96
書いてみろよ
504:Name_Not_Found
12/04/28 01:22:15.77
高レベルなコードを見せてもらおうか
505:Name_Not_Found
12/04/28 01:40:19.40
いや、高レベルとかじゃないから
順番は無く、重複の場合どのキーでもいいのなら>>493でいい
順番があって、重複の場合は最初のキーならfor-inは使えない(順番が保証されないから)
その場合はキーの配列を用意しておくとインクリメントのforループでやれる
506:Name_Not_Found
12/04/28 01:45:26.81
言葉で説明するならコード書きましょうよ
507:Name_Not_Found
12/04/28 01:58:21.52
>>505
オブジェクトには順序の概念がないから、順番を保証することなんて出来ない。
「キーの配列を用意しておく」ことはオブジェクトに対して勝手にキーの順序付けを行うんだよね。
それが正しい実装とは思えないし、そもそもオブジェクトに「最初のキー」なんて存在しない。
>>480が意味するのは、最初に発見されるキーだよ。順序がない以上、そう捉えるべき。
508:Name_Not_Found
12/04/28 04:29:48.44
質問の意図や前提をくみ取れない糞質問
が多い。それで回答者が逆質問をしたり
悪口を言ったりする。それを前もって思
い描く力が絶望的に欠如してるに違いない。
スーパーハッカーだけが意図を理解できる。
レアなそういう神が颯爽と登場する予感。
509:Name_Not_Found
12/04/28 04:39:18.95
や
れ
た
絶
ッ
い
510:486
12/04/28 04:57:40.24
phpの配列を想定してるんかな。JavaScriptには無いんで、自分で実装するしか無いね。
キーの配列を用意するんならこんな感じで
var myArray = {
data: {},
keys: [],
getKey: function(val) {},
getValue: function(key) {},
put: function(key, val) {},
putAll: function(arr) {},
getArray: function() {}
};
構造だけだが。
511:Name_Not_Found
12/04/28 05:07:10.74
や
り
た
い
だけ
な 神
512:Name_Not_Found
12/04/28 08:25:58.53
順序に意味があるなら配列に格納しておくなあ。
コード書いて見て、って人がいるけど仕様の話だからコードはかけないよ。ES3でも読むといい。
513:Name_Not_Found
12/04/28 09:11:22.12
質が悪い
・しつがわるい
・たちがわるい
514:Name_Not_Found
12/04/28 09:15:17.47
順序に意味があるかは
質問者がそれに答えない限りわからん
515:Name_Not_Found
12/04/28 10:03:32.70
JS最近覚え始めてリテラルとかサッパリわからんのだけど
おまえらってどういった方法で勉強してそこまでの能力を身に着けたの?
JavaScript The Good partsとかいうのを買って見てるんだけど全然わからん。
516:Name_Not_Found
12/04/28 10:08:27.04
いろんなソースを読むことだな
517:Name_Not_Found
12/04/28 10:13:34.59
一つの言語だけ詳しくて
あとは全く知らないというプログラマはいないと思う
JavaScriptが最初の言語なら
プログラムとは何なのか
という根本から学ぶ必要があるから
ハードルが高く感じるんじゃないか?
HTMLのように書き方を学ぶだけで事足りる言語とは開きがあるわな
518:Name_Not_Found
12/04/28 10:14:47.55
>>515
その本はJSの入門書じゃないよ。
初めての第2版かJS第5版、あるいはw3cをあたれ。
519:Name_Not_Found
12/04/28 10:25:44.45
JSの情報はWebにいくらでもあるよな
520:Name_Not_Found
12/04/28 11:01:17.08
>>516-519
ありがとう。HTML/CSSはわかるけどプログラム言語さっぱりでしかもJavaScriptが最初に手を出し始めた言語だから今にも挫けそう。
例の動物本の2版と5版も検討してみたけど2版には誤字があったりするみたいで
どの道文字ばかりの本は3日坊主で終わってしまいそうな予感しかしないからゼロからはじめるってやつにした。
>ソース嫁、JSの情報はWEBに…
それは前からやってることなんだけどぐぐっても専門用語ばっかりでよくわからん。
リファレンスサイトみても大概がサンプルみろでおおまかなことしかわからないし…
ってことで参考になりました。ありがとうございます。
521:Name_Not_Found
12/04/28 11:03:32.07
わからないことをある程度自力で解決できる能力がないと
プログラミングって続けられないと思うわ
522:Name_Not_Found
12/04/28 11:07:20.32
最初はエクセルVBAがお勧め
JavaScriptは自由度が高すぎて逆に素人にはダメだ
523:Name_Not_Found
12/04/28 11:07:39.76
HTMLやCSSでも覚えてる最中にわからんことがあったら基本ぐぐって解決はしてたんだけど
プログラミング言語って壁の前にくるとどうもすぐ頭がパンクしてしまって・・・
524:Name_Not_Found
12/04/28 11:25:46.82
>>520
Head Firstシリーズはサンプルコード付きだから、初めてのプログラムなら良いかも。
買わずとも図書館に行けばあるかもね。
525:Name_Not_Found
12/04/28 11:30:58.05
各Webページの動作に興味を持つ
仕組みを知るためにソースを覗いてたどる
は必須。
頑張りんしゃい。
526:Name_Not_Found
12/04/28 13:15:23.71
>>520
体系的に学びたいなら本を読めばいいが、
技術はすぐに古くなるからWebで最新情報を収集すべし。
リファレンスサイトがすべてではない。
サンプルは星の数、つまりWebサイトの数だけある。
このサイトの作りはおもしろいがどう作ってるんだろう、
とソースを探るような好奇心がないと続かない。
学ぶことは真似るところから始まる。
527:Name_Not_Found
12/04/28 13:57:05.42
最初の最初はとほほでも何でも見ながら色々数作ってみて慣れていけばいい
慣れてきたらECMAScriptの仕様を読んでちゃんと理解する、PerlやPHP、JavaEE等サーバーサイドにも挑戦するとなお良い
528:Name_Not_Found
12/04/28 14:06:49.67
とほほで学んだ人のとんでも質問にはさんざん苦労させられているので
とほほはやめてほしい。
529:Name_Not_Found
12/04/28 14:11:20.24
とほほはぐぐればトップにでるからな。有害だわ。
530:Name_Not_Found
12/04/28 14:12:31.63
ホームページでちょっと書く程度だったら
仕様書まで読む必要はないと思うわ
そこまで理解しなくてもそれなりに書けるよ
結果よりも過程が気になりだすようになったら
そういうのに手を出していけばいい
世界が広がることは間違いないし
コードを書くこと自体が楽しくなってくるはずだ
531:Name_Not_Found
12/04/28 14:13:23.86
>>528
10年くらい前はあの程度の言語に思われていたんだよ
532:Name_Not_Found
12/04/28 14:15:15.18
とほほはいい加減放置するなら閉じろよ
533:Name_Not_Found
12/04/28 14:51:17.55
alert([
typeof '123',
typeof String(123),
typeof new String(123)
]);
534:Name_Not_Found
12/04/28 14:53:42.94
うわ、JavaScriptは変態だな
535:Name_Not_Found
12/04/28 15:39:23.20
>>533
string,string,warning
536:Name_Not_Found
12/04/28 15:42:33.25
引数の型でメソッドに
擬似的なオーバーロードを実現するとき、
文字列が結構厄介なのよw
537:Name_Not_Found
12/04/28 16:22:33.50
alert([
'123' instanceof String,
String(123) instanceof String,
new String(123) instanceof String
]);
538:Name_Not_Found
12/04/28 16:49:20.98
"string"と"Stringオブジェクト"は別物
539:Name_Not_Found
12/04/28 16:52:40.12
if ("string" == "Stringオブジェクト") {
alert("別物");
}
540:Name_Not_Found
12/04/28 16:54:55.49
== はおかしくね?w
541:Name_Not_Found
12/04/28 17:39:32.80
>>532
あそこ放置されてないぞw
542:Name_Not_Found
12/04/28 20:35:24.28
!===じゃね?
543:Name_Not_Found
12/04/28 20:45:45.04
new stringする機会なんて無いに等しい。