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

私的良スレ書庫

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

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

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
751 : Name_Not - 2012/03/28(水) 16:50:32.26 ID:FJcXPkO4 (+40,+30,-66)
質問する人が、問題を解決できる回答を期待するように

答える側も「ただ問題点の指摘だけでなく根本的にわかってもらう」ために
>>724みたいな回答をして、理解してもらえることを期待している

双方とも期待を裏切られると「なによ!なんなのよ!」て気持ちになっちゃって
ちょっと殺伐とした空気になるのはしゃーなしだな

※良い例だと思ったので勝手に安価しました>>724さんすみません
752 : Name_Not - 2012/03/28(水) 16:54:33.66 ID:??? (+34,-30,-187)
まあとにかくだ、document.writeする前に
それをconsole.logに書き換えてどう出力されるのか確認したまい

Firefox なら Ctrl+Shift+K で
IE なら F12 で
Chrome なら    で
Chrome Lite なら about:debug で
Opera なら  で
Safari なら         で
Konqueror なら  で
Lynx なら    で
Netfront なら       で
w3mなら で

WebConsoleが開くから
Firebug使ってもいいけどな
753 : Name_Not - 2012/03/28(水) 16:58:08.11 ID:??? (+63,+29,-16)
>>751
何を指摘されてるのか理解できたら、>>723も同じ事言ってるのが分かるけどな
正直先を越されたと思ったし
754 : Name_Not - 2012/03/28(水) 17:02:19.63 ID:??? (+3,-30,-87)
consoleない環境も多いし、まあ超初心者は基本はalertだな
俺が超初心者のときはこれ使って頑張ってた
function (){try{
}catch(err){if(confirm(err+"\n\n[エラーを翻訳する]")){window.open("http://translate.google.co.jp/translate_t?text="+err+"&sl=en&tl=ja")}}}
755 : Name_Not - 2012/03/28(水) 17:04:26.67 ID:??? (+57,+29,-22)
春休み特別企画が始まってたのか

↑ここまでなりすましの自演
↓まだまだ続くよ
756 : Name_Not - 2012/03/28(水) 17:06:49.85 ID:??? (+58,+27,-4)
>>752
なにこれ? 馬鹿には見えないキー?
757 : Name_Not - 2012/03/28(水) 17:25:07.87 ID:AcktYBaU (+18,+28,-65)
質問です。
サムネイル画像にマウスオーバーすると特定の場所の大きい画像が切り替わり、
マウスアウトで元の画像に戻る、という画像の切り替えを行いたいのですが、
うまい方法が見つからず・・

いままでは以下と同じnameを用いる方法を使用していたのですが、
nameタグが使えない状況になってしまい新しいスクリプトを探しています。
http://www.tagindex.com/javascript/link/change3.html

よい方法がありましたらお教えください。
759 : 713 - 2012/03/28(水) 19:09:13.09 ID:??? (+63,+29,-19)
>>716
丁寧に解説して頂き有り難う御座いました。
凄い理解できました。
760 : 757 - 2012/03/28(水) 20:13:06.94 ID:AcktYBaU (+36,+29,-94)
>>758
ありがとうございます。おかげさまでgetElementByIdを使う方法で探し、
以下サイトに辿り着きましたが、サムネイルからマウスアウトしたあと、
大きい画像が最初の状態に戻るようするにはどうすればよいのかで悩んでいます。
http://tenderfeel.xsrv.jp/javascript/271/

上記サイトの『ページ内に複数設置する場合』が近いのですが・・

属性。初心者に丁寧にありがとうございます。
761 : Name_Not - 2012/03/28(水) 20:27:05.50 ID:FJcXPkO4 (+9,+29,-40)
>>760
マウスオーバとかのイベントのたびに、大きい画像のimgを探してるわけだが
そうじゃなくて、まず最初に探して変数に入れておく

そうすれば、大きい画像のsrcが最初は何だったかわかるじゃん
それも変数に保存しておく

あとは、マウスオーバしたら画像のsrcをお好みのものに変える
マウスアウトしたらsrcを保存しておいたものに変える
762 : 再度失礼します - 2012/03/28(水) 22:53:20.90 ID:??? (-18,-30,+0)
<test1.js>
var paths = ['c:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE',
   'c:\\Windows\\notepad.exe'];

<test2.js>
function run(pathw) {
   var wshshell = new ActiveXObject("WScript.Shell");
   wshshell.run(pathw);
}

<test3.js>
function loop(wsc){
for (var j = 0; j < wsc.length; j++){
document.write('<input type="button" value="' + j + '" onclick="run(wsc[' + j + '])">');
}
}

<main.html>
var sc;
sc = paths;

loop(sc);

for(var i=0;i<paths.length;i++){
paths[i] = '"' + paths[i] + '"';
document.write('<input type="button" value="test" onclick="run(paths[' + i + '])">');
}

と書いた場合、最後のhtml内に直接書いたfor~のrun()はうまく動きますが、
外部ファイルに切り出したloop()から呼ばれるrun()は動作しない理由はどこにあるんでしょうか??
ieのF12で見れるソースを見ると、
ともにhtmlの<inputタグは全く同じように展開されていて、問題ないように見えるのですが・・・
763 : Name_Not - 2012/03/28(水) 22:53:45.06 ID:??? (+51,+23,-17)
jQueryUIのタブでそのサイトと同じようなこと出来た気がする
764 : 762 - 2012/03/28(水) 23:00:32.49 ID:??? (+55,+23,-25)
追記です。
書きもれましたがloop()で、
パスの前後にダブルコーテーションつけるように処理入れてます。
765 : Name_Not - 2012/03/28(水) 23:17:57.59 ID:??? (+39,-29,-17)
>>764
wscはloop関数内のローカル変数だから。
766 : Name_Not - 2012/03/29(木) 07:22:09.83 ID:??? (+76,+28,-15)
script側から画像の読み込みを強制中断させるにはどうしましょう
767 : Name_Not - 2012/03/29(木) 08:33:32.17 ID:??? (+27,+4,+0)
またggrばすぐ分かる事を
768 : Name_Not - 2012/03/29(木) 08:33:34.11 ID:??? (+30,+29,-45)
>>765
記述が同じになっていても、
渡す引数がないってことですか。
このような場合はどう対処すると、
ローカルを乗り越えられるんでしょうか?

()に直接パスを展開させてしまうと動きませんでした…
770 : Name_Not - 2012/03/29(木) 12:31:44.36 ID:??? (+53,+29,-29)
>>769
()の中に、シングルコーテで囲って
パス書いたのも動きますか?

同じように書いても、ファイルが見つからないと言われます
771 : Name_Not - 2012/03/29(木) 12:43:07.98 ID:??? (+57,+29,-39)
クォーテーションをクォートを略すのは見聞きするけど、
コーテーションをコーテと略すのはどこの流派だ。
772 : Name_Not - 2012/03/29(木) 12:52:17.73 ID:??? (+57,+29,-7)
流派?
携帯だったのと、長くなるから
途中で止めただけです
773 : Name_Not - 2012/03/29(木) 13:14:16.27 ID:K1Gn5nTR (-14,+28,-9)
>>770
それはJSの問題じゃないから知らんw
¥とバッククォートが間違ってるとか、その辺じゃないか?
775 : Name_Not - 2012/03/29(木) 13:44:47.40 ID:??? (+50,-30,-151)
>>770
パスに空白を含む場合、パスをダブルクォートで括る。

var path = '"C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE"';
or
var path = "\"C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE\"";
new ActiveXObject("WScript.Shell").Run(path);
776 : 766 - 2012/03/29(木) 14:38:13.37 ID:??? (+57,+29,-16)
なら強制切断はいいや
画像が存在しているかチェックするにはどうしましょう
ただしimg.srcにアドレス入れるのはダメな
毎回画像読み込んでたら重くてしょうがねぇ
777 : Name_Not - 2012/03/29(木) 15:03:12.86 ID:??? (-6,-29,-15)
HEADメソッドでも使えば
779 : Name_Not - 2012/03/29(木) 18:50:48.08 ID:??? (-1,-29,-7)
普通にDocumentContentLodedのときにwindow.abort()すりゃいいじゃん
780 : Name_Not - 2012/03/29(木) 18:59:04.83 ID:??? (+35,+29,-116)
>>775
それはもちろんそうしています。
ただやっぱりrun()に直接パスを書いた場合は動かないんですよね?

回りくどいやり方をしているとのことですが、
パス、ボタン設置、オープン動作、を
機能分けするとこの形になっちゃうと思ったんですが、
最初のローカル変数だから動かない事象を起こさず、
値をパス→設置→動作へ、渡す方法があるってことですか?
781 : Name_Not - 2012/03/29(木) 19:35:23.64 ID:K1Gn5nTR (+32,-30,-272)
>>780
>run()に直接パスを書いた場合は動かないんですよね?

期待通りに動いていない理由を切り分けられていない
htmlにこう書いて

<script type="text/javascript">
function run(pathw) {
  alert(pathw);
}
</script>
<input type="button" value="" onclick="run('c:¥¥Program Files¥¥Microsoft Office¥¥OFFICE11¥¥EXCEL.EXE');">
<input type="button" value="" onclick="run('c:¥¥Windows¥¥notepad.exe');">

書いた内容がアラートされるなら、引数の受け渡しは問題ない
http://jsfiddle.net/mVkru/

つまり動かない理由は関数runの中にある
782 : Name_Not - 2012/03/29(木) 19:52:22.45 ID:K1Gn5nTR (+15,-30,-269)
>>780
んで、俺だったらこんなふうにします

var path = ['hoge','fuga']; // 値

function run(p){ alert(p); }

for(var i=0,l=path.length ; i<l ; i++)(function(p){ // ループ

  var path = p;
  var button = document.createElement("input");
  button.type = 'button';
  document.body.appendChild(button); // 設置
  button.addEventListener('click',function(){
    run(path); // 動作。ここからならループのスコープは参照できる
  },false);

})(path[i]);
783 : Name_Not - 2012/03/29(木) 19:56:12.04 ID:??? (+33,-29,-55)
どこからどう見てもIEを想定してる上に、おそらくIE6くさいから
addEventListener じゃなくて attachEvent だな
784 : Name_Not - 2012/03/29(木) 19:57:53.41 ID:??? (+52,+29,-21)
>>782
pとか使うんだったら最初からpathsにしたほうがよくね。命名って大切だぞ。
786 : Name_Not - 2012/03/29(木) 23:03:42.82 ID:??? (+132,+29,-38)
>>781-785
ありがとうございます

domですよね?
今まで書いてきたコードと構文も違うので、もうちょっと勉強しますが、
>>782のものは、そのまま転記しても動かないですよね?
>>783に書き換えても。
787 : Name_Not - 2012/03/29(木) 23:57:09.12 ID:??? (+20,-30,-127)
JSで特定の要素のdisplayをnoneからblockに切り替えた際、
その要素に指定されているmarginが正しく反映されません。

具体的には、左右のmarginは効いているのですが、margin-top
だけがゼロになってしまいます。

この現象はIE8のみで起きていて、IE7やその他のブラウザでは意図したとおりに
表示されます。

どのような原因が考えられるでしょうか?
788 : 782 - 2012/03/30(金) 00:08:29.68 ID:zxyEdfC3 (+39,+28,-94)
>>786
動かんかね?
firebugでちゃちゃっと書いただけだからあれだけど

head要素に書くなら、loadとかdomContentLoadedで動かすようにしてくだされ

入門書の最初の方にはdocument.writeでやるのが書いてあるかも知れんが
今、世の中に転がってるサンプルとか解説はdom前提だから
食わず嫌いしないで覚えるといいよ

wshについては、詳しい人が現れるのを待つか、
wshスレで聞いてちょ
789 : Name_Not - 2012/03/30(金) 00:16:34.31 ID:??? (+73,+29,-8)
>>786
動かないよねって実際に試してみた?動かないならエラーが出るはずだけど。
790 : Name_Not - 2012/03/30(金) 00:26:09.52 ID:??? (+2,-29,-2)
>>787
jsfiddleとかで再現してみるといいかも。
791 : 787 - 2012/03/30(金) 01:24:18.94 ID:??? (+32,-30,-23)
>>790
jsfiddleでは正しく表示されました。

結局marginを使用せず、他の方法で位置調整することで
対応することにしました。
792 : Name_Not - 2012/03/30(金) 01:47:13.07 ID:??? (+62,+29,-3)
>>791
それならdoc宣言を疑うべきだったかもね
793 : Name_Not - 2012/03/30(金) 02:11:18.23 ID:??? (+25,+7,-15)
スレ違いだろ
794 : Name_Not - 2012/03/30(金) 02:18:27.24 ID:??? (+0,-25,+0)
>>787
IE8のバグ
無理
795 : Name_Not - 2012/03/30(金) 05:23:24.50 ID:??? (+19,-29,-109)
>>786
addEventListener の文字列をそのまま attachEvent に変えるだけじゃ動かんよ。
attachEvent の文言でぐぐってみて違いを見てみよう。

だがしかし、スコープがまだわかってない相手にDOMは、一足飛びのような気がしないでもないね。
796 : 766 - 2012/03/30(金) 08:00:01.09 ID:??? (+32,-29,-28)
XMLHttpRequestでHEADリクエスト送って404確かめよう思ったら
画像置いてある鯖のドメインが別で通信できねーわ
他にファイルの存在チェックをする手段は無いのかね
797 : Name_Not - 2012/03/30(金) 08:12:50.79 ID:??? (-6,-29,+0)
new Image()
798 : Name_Not - 2012/03/30(金) 10:04:45.91 ID:??? (+50,+29,-1)
出来ねーよバカ言うんじゃねえ
799 : Name_Not - 2012/03/30(金) 10:44:33.01 ID:??? (+55,+27,-18)
画像があるかどうかだろう?
それならImageでできるよ
800 : Name_Not - 2012/03/30(金) 10:52:18.42 ID:??? (+27,+24,-17)
797じゃなくて766に言った感じなんだけどな。
画像自体の読み込みは出来るだろうけど、HEAD飛ばして存在のみを確かめるのは無理じゃねえの?
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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