トップページ⇒php
982コメント330KB

JavaScriptを教えてもらう

■ このスレッドは過去ログ倉庫に格納されています
0001jjj2006/05/17(水) 17:55:17ID:pZC05JBa
初心者でもわかる先生おしえて
04494352007/10/15(月) 08:58:20ID:???
それは、marker内のopenInfoWindowHtmlにあるfoo1って意味だから、上で参照できないです。
thisは文脈で判断されるので。
0450nobodyさん2007/10/15(月) 09:51:21ID:???
>>449
this は文脈で判断されるってのはそうだが >>448 の例だと
>marker内のopenInfoWindowHtmlにあるfoo1
という意味にはならないな。エベントハンドラ内の this なら marker を指すはず。
04514502007/10/15(月) 09:51:44ID:???
エベント…
0452nobodyさん2007/10/15(月) 20:52:37ID:???
マウスオーバーしたimgタグの属性を変えることはできたのですが、
マウスポインタが、imgタグから出たときに、もともとファイルに記述してあった
属性に戻すにはどうしたらいいのでしょうか?
0453nobodyさん2007/10/15(月) 21:00:26ID:???
バックアップしとけば?
04544522007/10/15(月) 21:04:05ID:???
>>453
ありがとうございます。
グローバル変数に保存しておくと言うことですかね?
そうではなく、ファイルに記述してある内容に戻すことはできないですかね?
0455nobodyさん2007/10/15(月) 21:10:50ID:???
頭固いな
家着いたらサンプルコードかいてやるよ
0456nobodyさん2007/10/16(火) 00:08:57ID:Ggo+7Lvn
つ「onmouseout」
0457nobodyさん2007/10/16(火) 12:27:57ID:UaWfgcAi
<script language="JavaScript" type="text/javascript"><!--
for (i=0; i<info.length; i++) {
var date = info[i][2].split("/");
document.write('<p>'+date[0]+'年'+date[1]+'月'+date[2]+'日<br/><strong>'
+info[i][0]+'</strong><br/>'
+info[i][1]+'</p>');


}

の<p></p>内にdocument.imageを入れたいんですができるかな?
0458nobodyさん2007/10/16(火) 13:44:43ID:???
>>455
いつかえるんだ?
0459nobodyさん2007/10/16(火) 15:48:29ID:???
>>426
遅くなりました、ありがとうございます。
0460nobodyさん2007/10/16(火) 17:18:33ID:sLWgUutQ
jQueryにて右クリックイベントを捕捉したいんですが
どんな感じに書いたら出来ますでしょうか?
0461nobodyさん2007/10/16(火) 20:38:07ID:???
>>458
ヒント:デスマ
0462nobodyさん2007/10/17(水) 00:33:02ID:???
JavaScript使ってるような会社でデスマなんてあるのか?
実行環境を作ってる時はあったが
0463nobodyさん2007/10/17(水) 01:45:15ID:???
ですまーち
0464nobodyさん2007/10/17(水) 02:45:17ID:9raW6a7Q
まったくの素人ですが、計算のなかで次の行が効きません。
どうしてでしょうか。

if (gaku > 500) {alert("金額は500万円まで");return false;}
0465nobodyさん2007/10/17(水) 03:05:26ID:???
質問者としても素人だな
0466nobodyさん2007/10/17(水) 03:06:09ID:???
それのお尻に
else alert(gaku);
をくっつけてgakuの中身を確かめなさい
0467nobodyさん2007/10/17(水) 12:34:03ID:???
子ウィンドウにある画像をクリックすると、親ウィンドウのテキストボックスに画像のファイル名を送りたいのですが。
上手く送ることができません、どうのようにしたらいいでしょうか。

$fileは画像のファイル名

子ウィンドウ
<a href=' ' onClick='javascript:window.opener.document.form1.text1.value=$file.value'><IMG src='$file' ></a>

親ウィンドウ
<form name="form1">
<input type="text" name="text1">
</form>
0468nobodyさん2007/10/17(水) 12:38:20ID:9raW6a7Q
>>466
レスありがとうございます。
くっつけてみましたが、まったく効いていません。
ということは、その行は飛ばして、次の処理に行っているということでしょうか。

これは、フォームの入力チェックに使っています。
0469nobodyさん2007/10/17(水) 13:04:45ID:???
>>468

横やりだが、変数 gaku に何も数字が入っていないのではと>>466は言いたいのだと思う。

ちなみにフォームのテキストフィールドから取得した数字は文字列だから、ちゃんと型変換してね。

例)

if ( Number( gaku ) > 500 ) { ...


そういえば、上レスでJavascriptのデータ型がどうのとか、perlなら良いなとか騒いでいた奴いたな...
ネタ振りにならないことを祈る
0470nobodyさん2007/10/17(水) 15:20:18ID:???
>>469
この場合勝手に変換して計算されると思う
>>468
どっちのalertも表示されないのならその行自体が実行されてない
0471nobodyさん2007/10/17(水) 18:38:11ID:???
ほら、このとおり。
算術演算子と文字列演算子が同じなのがおかしい。
0472nobodyさん2007/10/17(水) 19:07:48ID:???
文字列演算子がどうしたって?
0473nobodyさん2007/10/17(水) 19:38:46ID:???
+は文字を連結するのか、数値を加算するのかというお話。あまりイクナイ実装だよねみたいな
0474KaM2007/10/17(水) 19:46:18ID:???
>>741
おかしいと言うか適切ではないと思うが、そう作ってしまったものは仕方が無い。
完成物を使う以上、それに不満を言っても仕方無いでしょ。
それが気に食わないのなら、他の自分好みの言語を使うなり、自分好みに
カスタマイズして使えばいいだけでは?
0475nobodyさん2007/10/17(水) 20:36:15ID:???
そもそも文字列を使用して算術計算を行うこと自体がナンセンスなんだがね
算術計算をしたいなら数値を使えよ
0476nobodyさん2007/10/17(水) 22:07:19ID:???
>そもそも文字列を使用して算術計算を行うこと自体がナンセンスなんだがね
>算術計算をしたいなら数値を使えよ

バイナリエディタでも使ってろ
0477nobodyさん2007/10/18(木) 00:08:36ID:???
またですか?
0478nobodyさん2007/10/18(木) 12:47:03ID:???
はい、またです!

次の方、いますか?
0479nobodyさん2007/10/18(木) 19:48:24ID:???
>>474
で、決定だろ。
アンカーは>>471の間違いだと思うが
0480nobodyさん2007/10/18(木) 20:31:24ID:???
中置演算子全部消して関数呼び出しに特化すれば良い
0481nobodyさん2007/10/18(木) 20:35:53ID:???
数値の加算は a + b ではなく a - -b と書けばよい
0482nobodyさん2007/10/18(木) 21:34:38ID:???
なんかね何人か論点ずれてんのに自分すごい頭いいこといってると酔ってる馬鹿がいるかも
0483nobodyさん2007/10/18(木) 21:43:46ID:???
はいはい
0484nobodyさん2007/10/18(木) 21:50:06ID:???
実際に482より相対的に頭がいいだろ
0485nobodyさん2007/10/18(木) 23:12:10ID:???
情報なしの憶測で決めつけちゃう馬鹿もおりました。同一人物か。
0486nobodyさん2007/10/19(金) 00:01:57ID:???
これは良いブーメラン
0487nobodyさん2007/10/19(金) 00:53:19ID:???
>>485
>>485
0488nobodyさん2007/10/23(火) 03:52:48ID:???
おじゃまします。

・最近チェックした商品を、ページに表示する
・画像やページを遷都する際に、背景をグレーアウトしてNow Loading...等を出す

ということをやりたいんですが、
Cookieや、Javascriptを使うのは理解できるんですが、なかなかサンプルも見つからず、
どこか分かりやすく解説しているサイトか書物ってないでしょうか?
もしくは、何を勉強すればいいのかヒントください。
0489nobodyさん2007/10/23(火) 12:56:36ID:???
>>488

とりあえずAjax

Ajax
ttp://www.openspc2.org/JavaScript/Ajax/Ajax_study/

あと、PHPも勉強するといいかも...
0490nobodyさん2007/10/23(火) 22:10:51ID:???
最近チェックしたってのがどの範囲か分からんが、
ページ内だけなら変数に保存しておけるし、同じ PC 内で一定期間なら Cookie だし、
違う PC でも同じユーザってのならセッション使って会員制だ。
0491nobodyさん2007/10/23(火) 22:26:19ID:???
ブラウザ上のJavaScriptは板違い。Web制作板の質問スレ。
http://pc11.2ch.net/test/read.cgi/hp/1190811747/l50
0492nobodyさん2007/10/25(木) 13:10:24ID:???
onclickでwindow.close()とwindow.openerの二つの動作を実行させたいのですが、
先にcloseを置くと値が飛ばず、closeを後に置くと閉じなくります。
どのようにしたらいいでしょうか?よろしくお願いします。
0493nobodyさん2007/10/25(木) 13:35:03ID:???
なんで後に置くと閉じなくなるの?
04944922007/10/25(木) 14:19:48ID:???
書き方が間違っていたようです、お騒がせしました。
0495nobodyさん2007/11/09(金) 16:04:05ID:k4IFeOi8
下のコードは、form1という名のテキストボックスtext1の値をtext2にコピーする例ですが、
変数の値を基に、そのオブジェクトを指定することはできませんか。例えば変数 objName
に"text1"が代入されているとき、どのようなコードでtext1というオブジェクトを指定で
きるのでしょうか。

var str1;
str1 = document.form1.text1.value;
document.form1.text2.value = str1;

わかりきってるかも知れませんが、もし正しく伝わらないといけないので、何を前提とし
て言ってるのかを一応補足しておくと、HTMLファイルの中にJavaScriptを記述してWebブ
ラウザから実行するプログラムで、text1やtext2はHTMLで記述したテキストボックスです。
0496nobodyさん2007/11/09(金) 19:02:42ID:???
>>495
if 使え
0497jd2007/11/09(金) 22:47:36ID:WBd11igL
kkkkk
0498nobodyさん2007/11/09(金) 23:01:32ID:???
>>495
ひどい文章だ
0499nobodyさん2007/11/10(土) 00:21:25ID:???
「初めてのJavaScript」(オライリー刊)っての、読み始めたんだけど、
初心者向きとは思えない難しさで悪戦苦闘中。
evntとかeventとかtheEventとか変数の綴りを微妙に変えるのが流行なの?
0500nobodyさん2007/11/10(土) 08:13:28ID:???
変化をつけないと飽きるから
0501nobodyさん2007/11/10(土) 14:40:00ID:???
読んでないからわからんが仕様と実装と実装の仕様を分けてるんじゃないの
0502nobodyさん2007/11/11(日) 01:25:09ID:???
初心者(初学)だと確かに厳しいけどそこそこプログラミングできる人には良いと思う。自分は初心者だったが、今はジャワサイ本読むようになったからか、初めてのサイ本は簡単に見える
0503nobodyさん2007/11/16(金) 15:27:46ID:PJayprsB
質問です。

javascriptでテキストを返すんですが
10行だったらブラウザのスクロールバーが出ないんですが
20行だったら出るというような状況です。

この時スクロールバーが出るため、ブラウザのウィンドウ分
表示が左にずれます。

スクロールバーをわかりにくくなりそうなのでできればやめたいです。

この場合最初からスクロールバーを出しておくようなデザインにするしかないのでしょうか?

皆さんの意見お願いします。
0504nobodyさん2007/11/16(金) 16:49:43ID:???
スクロールバーを表示させたくないならhiddenにすればおk
0505nobodyさん2007/11/30(金) 17:42:31ID:irp9OKfI
ページ内にあるいずれかのhrefをクリック、またはformがsubmitされた場合を検知して、
特定のパラメータを追加して再送信するにはどうやれば良いのでしょうか。

<a href="foo.html">AAA</a>
↑クリックを検知してfoo.html?bar=bazのようにして再送信したい
0506nobodyさん2007/12/01(土) 16:32:53ID:???
>>505
<html><header><title>sample</title>
<script type="text/JavaScript" language="JavaScript">
<!--function clicked(){ document.SAMPLEFORM.bar.value="baz"; document.SAMPLEFORM.submit();}-->
</script>
</header><body>
<form name="SAMPLEFORM" method="GET" action="foo.html">
<input type="hidden" name="bar">
<a href="javascript:void(0)" onclick="clicked()">AAA</A>
<input type="submit" value="送信" onclick="clicked()">
</form></body></html>

で桶のはず。

追伸
webで公開するならNoscript環境の事も少しは考えてやってください。
0507nobodyさん2007/12/04(火) 17:54:48ID:???
safariをどうにかしてくださ
0508nobodyさん2007/12/04(火) 22:06:46ID:???
safariは無視してる
0509masa2007/12/04(火) 23:21:16ID:???
正直、対応アーキテクトが一番多いからFirefoxでしか動作確認してない。
0510nobodyさん2007/12/05(水) 11:07:13ID:???
Firefox でしか動かないスクリプトなんざ
IE でしか動かないスクリプト以下の価値しかないと思っている。
Microsoft が Mozilla に変わっただけで、
仕様の策定に関われてない状況は何も変わらないのに。
0511nobodyさん2007/12/05(水) 12:38:57ID:???
>510の文書が下手すぎて、何を言わんとしているのか意図が掴めません。

判る人、解説を...
0512nobodyさん2007/12/05(水) 12:49:47ID:???
>>511
俺はFirefoxが嫌い

と言う風に読んどいたら良いんじゃないの
0513nobodyさん2007/12/05(水) 13:34:27ID:???
>>511
MSもMozllaも五十歩百歩
0514nobodyさん2007/12/05(水) 15:39:58ID:???
デバッグ時にhiddenの値を表示できるようにこんな関数を考えたのですが、IEで実行すると
「typeプロパティの値を取得できませんでした。このコマンドはサポートされていません」と出てしまいます。
Firefoxではちゃんとできているのですが、これをIEでできるようにする方法はないでしょうか?

function Unhide() {
var objs = document.getElementsByTagName("input");
for (i=0; i<objs.length; i++) {
if (objs[i].type == "hidden")
objs[i].type = "text";
}
}
0515nobodyさん2007/12/10(月) 05:01:16ID:???
オーバーライドのエラーじゃね?
0516nobodyさん2007/12/10(月) 06:02:40ID:???
MSDNには the type property is read/write-once って書いてあるね
0517nobodyさん2007/12/14(金) 20:59:37ID:hCyrWHNw
質問です。下記のようなプログラムを作ったのですが、
valに値が戻ってきません。onComplete処理内の変数が外に出ないようなのです。
おそらく初歩的なことだと思うのですが、
どうやったら値を戻せるでしょうか?よろしくお願いします。

val = hoge(url);
function hoge(url) {
 var xml;
 new Ajax.Request(url, {
  method: 'get',
  onComplete: function(request) {
   xml = 処理(request);
  }
 });
 return xml;
}
0518nobodyさん2007/12/15(土) 12:42:25ID:???
IE6でMath.round()使おうとすると
オブジェクトでサポートされていないプロパティまたはメソッドです
というエラーが出るんですが理由教えていただけませんか?
0519nobodyさん2007/12/15(土) 14:24:36ID:???
サポートされていないプロパティまたはメソッドだから
0520nobodyさん2007/12/15(土) 20:12:56ID:???
やっぱFirefoxじゃないとダメってことですね
0521nobodyさん2007/12/15(土) 22:00:19ID:???
サポートしてるだろw
0522nobodyさん2007/12/17(月) 12:55:24ID:???
>>517

仕様を見直しましょう。
コールバック関数は素直に分けて書いた方が、判りやすいしミスも減ります。
引数内で、無名関数を宣言するのは感心しません。

ちなみに
ttp://www.h2o-ajax.com/article219.html
0523nobodyさん2007/12/17(月) 16:56:08ID:N9TiXYo7
>>517

AJaxの「A」はAsynchronousのA:非同期であるということを理解して下さい。
0524nobodyさん2007/12/17(月) 20:03:44ID:5gomZ5wm
document.write("<font size ='7'>一覧</font><br>");
for(i = 1; i<6; i++){
document.write('<a href="jwork01.html">テスト1</a><br>');

>document.write('<a href="test01.html">テスト1</a><br>');
test01〜05.htmlのリンクと、文字列テスト1〜テスト2までをfor文のiを使って
テスト1
テスト2
テスト3
テスト4
テスト5

というように、繰り返し表示たいのですがどうやっても正常に反映されません。単純でカンタンなことだとは思うのですが、、教えて頂けませんでしょうか。

お願いします。
0525nobodyさん2007/12/17(月) 20:05:32ID:5gomZ5wm
>>524
修正です。
>文字列テスト1〜テスト2までをfor文のiを使って

文字列テスト1〜テスト5までを
0526nobodyさん2007/12/17(月) 20:07:29ID:???
>>524
'<a href="jwork01.html">テスト1</a><br>'
を5回表示したいんだろ?
想定外の出力が出てくるの?
0527nobodyさん2007/12/17(月) 20:12:14ID:5gomZ5wm
jwork01.html
jwork01の1の部分を1〜5にiを使って変えたいんです。
同じようにテスト1の1を1〜5にしたいんです。
出力結果は
テスト1
テスト2
テスト3
テスト4
テスト5

このようにしたいです。
0528nobodyさん2007/12/17(月) 20:56:07ID:???
>どうやっても正常に反映されません
どういう方法やったの?
0529nobodyさん2007/12/17(月) 21:57:51ID:???
>>527
こう?

document.write("<font size ='7'>一覧</font><br>");
for(i = 1; i<6; i++){
i=i++;
document.write('<a href="jwork0',i,'.html">テスト',i,'</a><br>');
}

0530nobodyさん2007/12/17(月) 22:00:28ID:???
>>529
あ、ごめ。余計なコードが。
i=i++;はいらないすね。
0531nobodyさん2007/12/17(月) 23:56:43ID:I7hqSm9l?2BP(1)
<script type="text/javascript">
<!--
function m() {
var x , y ;
for(x = 0; x < 81; x++) {
y += "<span>a</span>" ;
}
window.document.getElementById("field").innerHTML = y ;
}
-->
</script>

<button onclick="m();">テスト</button>

<span id="field"></span>

undefinedaa(ryと表示されるんですが
aaaaa(ryと表示されるようにしたいんです
どうしてundefinedが表示されるんでしょうか
0532nobodyさん2007/12/17(月) 23:58:12ID:???
null値に += って出来たっけ?
0533nobodyさん2007/12/18(火) 00:04:14ID:L0zm5ZbJ?2BP(1)
>>532
そのレスをヒントにググってみるとすぐに解決できました
ありがとうございます
0534nobodyさん2007/12/18(火) 03:37:41ID:???
>>529
こういう風にdocument.writeの引数を複数入力すると
全て纏めて出力されるというのはどこで定義されている仕様ですか?
0535nobodyさん2007/12/18(火) 03:38:50ID:???
JavaScriptの文法
0536nobodyさん2007/12/18(火) 18:11:58ID:???
>>535
と言うとMDCあたりに載っているのでしょうか?
0537nobodyさん2007/12/18(火) 19:16:20ID:???
     ____
   /__.))ノヽ
   .|ミ.l _  ._ i.)  
  (^'ミ/.´・ .〈・ リ   文法はわしが育てた
  .しi   r、_) |  
    |  `ニニ' /   
   ノ `ー―i
0538nobodyさん2007/12/20(木) 12:47:48ID:???
>>534
mshtml.dll
HTMLDocument
Sub write(ParamArray psarray() As Variant)
0539nobodyさん2007/12/20(木) 20:44:41ID:???
>>538
ありがとうございます。でも(;'A`)ワカンネ
主要ブラウザで機能する事は確認できますけど
何故かリファレンスには書いてないような・・・
0540nobodyさん2007/12/20(木) 21:15:33ID:???
ECMAのカンマ演算子とか参照したのかと
0541nobodyさん2007/12/20(木) 21:30:01ID:???
たまたまAddition operatorとComma Operatorの結果が同一になるケースなだけだな
0542nobodyさん2007/12/21(金) 12:39:20ID:???
test
0543nobodyさん2007/12/21(金) 14:38:57ID:???
カンマ演算子って最後の式が評価値になるんじゃなかったっけ?
0544nobodyさん2007/12/21(金) 17:03:19ID:fwlvHs3S
ブログパーツというんでしょうか?
よく、javascriptのタグが発行されて、はっつけると何かが表示されるようなのってあるじゃないですか?
あれってどうやるのでしょうか?

Ajaxに使われる、httprequestでしたっけ?あれは、たしか別サーバーのものは読めないですよね?
iframeをjavascriptで生成して、writeすればいけそうですが、iframeというのがちょっと・・・

objectタグも試したら外のものは表示できないみたいだし・・・
他に、外サーバーのものをうまく表示する方法ってありますか?

皆さんどうしてるのでしょうか?
0545nobodyさん2007/12/21(金) 20:54:34ID:???
じゃないですか?とかでしたっけ?とか言わなくて済むようになってから出直して来い
0546nobodyさん2007/12/21(金) 21:10:29ID:???
>>544
JSONP
0547nobodyさん2007/12/21(金) 22:30:23ID:???
オライリーの「初めてのJavaScript」のサポートサイトいったらいきなり凄いコードがあって笑った


例1-4 document.onload()によってイベトハンドラを呼び出す
http://www.marlin-arms.co.jp/jpn/support/ljs/chap01/example01-04.html


<script type="text/javascript">
 document.onload=hello();
 function hello() {
  var dt = Date();
  var msg = 'Hello, World! ' + dt;
  alert(msg);
 }
</script>
0548nobodyさん2007/12/21(金) 23:26:42ID:???
>>546

>>544じゃないけど、面白そうなんで追ってみた。
http://www.xml.com/pub/a/2005/12/21/json-dynamic-script-tag.html

技術的には 

1) ブラウザ側でscriptタグを生成し src属性にサーバの URLを設定する。
2) それをブラウザのヘッダ領域に appendChildすると、スクリプトとして実行するためにロードが始まる。
3) サーバ側では、必要な情報を含んだscriptとして動的に生成し、返す。
4) ブラウザはそれを実行することで情報を取得する。

という理解でOK?
body部のscriptを実行してるときに、head部にスクリプトを追加するというあたりが力技っぽいけど、良いのかな。
■ このスレッドは過去ログ倉庫に格納されています