+ JavaScript の質問用スレッド vol.4 +
1 :
Name_Not_Found :
2001/08/10(金) 21:12
というわけで、こちらでお願いします。
3 :
Name_Not_Found :2001/08/10(金) 22:00
HPビルダースレからこちらの方が良いと言われて来ました。 クリックしてリンク先に行くときに、ダイアログボックス(?)を開いて 設定した質問に決まった単語を入れるとリンク先へ飛べる、 で、間違えた単語を入れたら飛ばない、、なんてのは どういう風にすれば良いのでしょうか? 質問の内容がわかりにくいかもしれませんが、わかる方お願いします。
4 :
Name_Not_Found :2001/08/10(金) 23:23
新スレおめ。 ここはシッカリした知識が飛び交うので期待しとるよ。 あげとく。
>>3 どうしてもその解答をソースから見られないようにしたいんだったらJSには無理かなぁ。
CGIにするしかないかな
vol.3 の 910あたりを見てチョ
6 :
Name_Not_Found :2001/08/11(土) 00:55
3です。
タグなどは全然わかっていません(涙)
>>5 見ましたが全然わかりませんでした。
教えて君でごめんなさい。
解答ソースは見られてもかまわないです。
普通のページにちょこっと趣味のページを作って
少しだけ小細工をしたいな程度なのでパスワードは重要では無いです。
やはり難しいでしょうか?
>>6 ほれ。ソース見たらバレるよ
<html>
<head>
<script type="text/javascript">
<!--
function sine(){
var mona=prompt("pass入れろ","");
if(mona=="giko"){//←パス名。仮に「giko」としておくね。
location.href="secret.html";//←正解の場合飛ばすページ
}
}
//-->
</script>
</head>
<body>
<a href="#" onClick="sine()">押せや</a>
</body>
</html>
javascriptを1から勉強したいんですけど なんかいい本ないですか? できればプルダウンメニューとか作れるようになりたい。 プログラム経験ナシです。とっかかりにいい本あったら教えてください。
>>8 ベタな所で〜詳解HTML&JavaScript辞典(秀和)〜か〜JavaScript例文活用辞典(技評)〜など如何?
前者はちょっと古いかもな。
11 :
Name_Not_Found :2001/08/12(日) 00:58
前スレでも質問したんですが、回答を得られないうちに新スレになったので 重ねて同じ質問をさせてください。 メインウィンドウのツールバーを消すには どうすれば良いのでしょうか。サブウィンドウのツールバーは消せますよね。 それと同じように該当するページを開くとツールバーが消える用にしたいのです。 検索かけたのですが、ネスケ用のスクリプトしか見つかりませんでした。 私にはJavaScriptを数値を変えてコピペするくらいのスキルしかありません。 どうかよろしくお願いします。
メインウインドウのツールバーを消すのも、 サブウィンドウのツールバーのも一緒じゃないの? つーか、閲覧者が不便になるようなJavaScriptの 使い方には反対
ネスケ用のスクリプト貼れYO
15 :
万策尽きた :2001/08/12(日) 15:02
Win NN4で<div>内(レイヤ)のイメージを切り替えたいのですが、 上手く行きません。 document.layers["divname"].document.images["imgname"].src = "aa.gif" で通常なら上手く行くのですが、テーブルの幅、高さどちらかを %でセットしている テーブルの中に<div>を置くと、上記の構文で アクセスできなくなってしまいます。 <html> <body bgcolor="#FFFFFF"> <h3>サンプルHTML</h3> <table width="100%"> <tr> <td> <div id="div1" style=" position : relative ; z-index : 0 ;"> <table> <tr> <td><img src="aa.gif" width="10" height="10" name="img1"></div> <td><img src="bb.gif" width="10" height="10" name="img2"></div> </tr> </table> </div> </td> </tr> </table> <script language="Javascript"> <!-- alert(document.layers["div1"].document.images.length); // --> </script> </body> </html> これだと"2"がアラートで表示されるハズなんだけど width="100%"を入れると必ず"0"になってしまいます。 誰か解決策知りませんか?
16 :
Name_Not_Found :2001/08/12(日) 17:45
17 :
Name_Not_Found :2001/08/12(日) 18:19
>>16 サブウィンドウってどれ?
右下のあれのこと?
そのページはフレームで分割されてます。
JavaScriptではなく、「HTML」です。
ソースミロヨ....
HTML的にも
>>15 のは、おかしいかもしれないけど、
NNのTABLEはおかしくない?
4.5とかの時は普通の100%表示がおかしかったよ。
まだチャント直ってないんじゃない?根本が。
なんでTABLEの中に入れてるの?レアイアウト?
位置指定したいならTABLE内じゃなくて
JAVASCRIPTで位置指定したabsoluteのレイヤ(div)内で使うのが無難じゃない?
と言うか、画像だけ切り変えるのは駄目なの?
関係ないんだけどさNNネタ。
NNだとさタグ内に直接スタイル定義した時に
変なソース吐かない?あれなに?
<div style="〜
<div Tstyle="〜
みたいなの。
タグ内で指定してる時とかさ、absoluteで作ったdivが増えてくると
表示がおかしくなったりしない?自分だけかな?
がいしゅつだったらゴメソ。
20 :
Name_Not_Found :2001/08/12(日) 23:00
16です。 17様のおっしゃるとおりでございました。
21 :
Name_Not_Found :2001/08/12(日) 23:01
ネスケは、document.write()とかやった時のソース表示の仕方もやだ。
>>19 ネスケはCSSの解釈が無茶苦茶だ。
ネスケ用にソース書く必要なし!
23 :
n6男 :2001/08/13(月) 00:35
n6を無視しないでよぉ
24 :
Name_Not_Found :2001/08/13(月) 02:20
A、B、Cと3つフレームを切って、 Aをメニュー、Bをメインのフレームとして、 Cには「Bに現在表示されているものの説明」の画像 (「BBSが表示されています」みたいな)を表示したいのですが、 「Bの内容が書き換えられた」のを見てから Cの画像を変更する方法をご教授ください。
25 :
Name_Not_Found :2001/08/13(月) 03:05
>「Bの内容が書き換えられた」のを見てから ↑ここを詳しく頼む。 つか、カリスマさん、早く田舎から帰って来てよぉ‥‥(藁
外部jsファイルを読み込んだら、文字化けすることってないデスカ? 最近のブラウザはダイジョブみたいだが、チョト古いヤツとか。 −例− ※test.js※ document.write("2ちゃんねらーが唱う!「モナーラヴ」"); ※test.html※ <html> <body> <script src="test.js"></script> </body> </html>
27 :
24 :2001/08/13(月) 04:52
>>25 あ、そっか。Aのメニューのオンクリックでお願いします。
28 :
Name_Not_Found :2001/08/13(月) 05:58
>>24 >あ、そっか。Aのメニューのオンクリックでお願いします。
これじゃBの内容が書換えられたのを確認する前にCの画像は変わるけど。
29 :
万策尽きた :2001/08/13(月) 11:48
>>18 あ、ほんとだ!。<td>の行末の</div>は</td>の間違いだ。スマソ。
>>19 100%100%のテーブルの中に内容を書くと、
ブラウザの真中に表示してくれるのを期待して書いてるんだけど・・。
divのabsoluteにすると絶対値指定だから
それがムヅカシイんです。
javascriptで動的に配置してもいいんだけど、
スクロールバーのサイズ分 機種やブラウザによってずれたりするし・・。
30 :
名無しさん@シナプス切れてる。 :2001/08/13(月) 13:35
リンクをクリックするとニューウインドウを開いて、 さらに、そのウインドウがどのような環境(解像度)でも 画面の中央にくるようにしたいです。 なんか、IEじゃ出来ないっぽいけど・・・。
31 :
Name_Not_Found :2001/08/13(月) 14:45
>>26 HTMLとjsファイルの文字コードをS-JISに統一するのが基本。ラシイ…
あとは<script src="test.js" charset="Shift_JIS">とかだとどうだろう
32 :
css :2001/08/13(月) 14:58
nn6>>>>IE5>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>nn4
33 :
Name_Not_Found :2001/08/13(月) 22:14
>>24 //フレームAの関数
function comment_img(img){
parent.C.document.images['commentimage'].src = img;
}
<!-- フレームAのアンカー -->
<a href="1.html" target="B" onClick="comment_img('1.gif')">*</a>
<a href="2.html" target="B" onClick="comment_img('2.gif')">*</a>
<a href="3.html" target="B" onClick="comment_img('変えたい画像')">*</a>
<!--フレームCの画像-->
<img src="" name="commentimage">
画像の縦、横は揃えて。
>>26 unescape()とかは?
34 :
Name_Not_Found :2001/08/13(月) 22:22
>>29 コンテンツ自体が小さいならscroll=noとか・・。
NN対応がんばってね。
>>30 <html>
<head>
<script type="text/javascript">
function open_center(){
// window, width:height, window name and URL
win_w = 640;
win_h = 1480;
winname = '_blank';
url = 'about:blank';
// window position
win_left = (screen.width/2) - (win_w/2);
win_top = (screen.height/2) - (win_h/2);
if(screen.width < win_w || screen.height < win_h) win_left = 0 , win_top = 0;
w_option = 'width=' +win_w+ ',height=' +win_h+ ',top=' +win_top+ ',left=' +win_left;
window.open(url,winname,w_option);
}
</script>
</head>
<body>
<p><a href="javascript:open_center();">open</a>
</body>
</html>
35 :
34 :2001/08/13(月) 22:26
>>34 のやつでavailWidthとかavailHeightの時って
Macだとどうなる?未対応なのかな。
Winしか使った事ないから分からないんです。
36 :
34 :2001/08/13(月) 22:29
うあ・・・ テストした時のままになっちゃった。 win_w = 640; win_h = 1480; ってのは任意。 スクリーンより大きいウインドウ指定したらどーなるのかなぁ? と思ってテストしてました。
37 :
26 :2001/08/13(月) 23:11
>>33 unescape()ってどんなのですか?!
ちなみに
>>31 さんのやってみたんですが、駄目でした・・・
38 :
Name_Not_Found :2001/08/13(月) 23:35
>>37 外部のファイルには日本語をLatin-1に変換したやつを書いといて
本体でunescape()したらどうかなぁ・・と思ったの。
外部js
doc = '%u3042%u3044%u3046%u3048%u304A '
test.html で
<script type="text/javascript">
document.write(unescape(doc));
</script>
escape("2ちゃんねらーが唱う!「モナーラヴ」");
ってやるとLatin-1に変換されるから、
document.write()とかで変換された文字列を書き出して
外部ファイルにはっ付けるとか。
実際にやった事ないからわからないんだけどね。
駄目だったらごめんね。
%uFF12%u3061%u3083%u3093%u306D%u3089%u30FC%u304C%u5531%u3046%uFF01%u300C%u30E2%u30CA%u30FC%u30E9%u30F4%u300D
※test.js※ document.writeunescape('%uFF12%u3061%u3083%u3093%u306D%u3089%u30FC%u304C%u5531%u3046%uFF01%u300C%u30E2%u30CA%u30FC%u30E9%u30F4%u300D')); ※test.html※ <html> <body> <script src="test.js"></script> </body> </html>
%20
2803u%B403u%4403u%D767u%2679u%7603u%4403u%F503u%F703u%7F35u%7966u%B403u%3903u%A603u%
43 :
Name_Not_Found :2001/08/15(水) 09:34
等】2ch@IRC【お絵かき】お絵かき【運営】ガイドライン/削除屋ML/2chメルマガ/削除要請は削除依頼/へ苦情は批判要望/へおいらのメール/いたづらはいやづら【ツール類】ツール案内/タチヨミ/DAT2HTML/AAエディタ/めすじぇね/大先生の検索/発言検索/2ch検索/発言統計/BBSMENU【他の掲示板】JBBS/サーバ監視所//15ちゃんねる/更新日0106/23a
44 :
Name_Not_Found :2001/08/15(水) 14:07
www.t-n-f.co.jp/coldminkclub/ 文字(画像)が画面の左から流れてくるんですけど これってどうやってるんですか? FLASHやgifアニメではないし。 JavaScriptかなにかですか? だとしたらどう書けばできるんでしょ?
45 :
Name_Not_Found :2001/08/15(水) 14:43
>>44 こんなのは前スレを読めば山のように例が出て来る。
46 :
風っ子 :2001/08/15(水) 18:37
縦2分割したフレームの上に、 いま流行りのメニューWindowが、クリックすると下にずらずら現れる奴、 そしてそれをクリックすると下の窓に表示されるのをなんとか設置。 だけど、上の窓に、BGMが欲しい人はお好きなBGMで。と BGMの、ズラズラ現れるメニューもつけてみたいのですが、 さんざん探しても見本になるようなページもみつからず。 ヒントまたはアドバイスをお願いします。
47 :
Name_Not_Found :2001/08/15(水) 18:54
>>46 BGMというか、サウンド関係の話題も前スレで出ていましたよ。
<form><select> <option value="001">その壱</option> <option value="002">その弐</option> <option value="003">その参</option> </select></form> みたいなセレクトボックスがあったとします。 "その壱"を選ぶと、valueの値"001"が返されると思うんだけど ここで"その壱"っていう文字自体を返すにはどうすればいいのですか? 宣言?領域で、form[0].element[0],ナントカ とかって書けばできそうな気がするんだけど、できなかった。。。 <option value="その壱">その壱</option> ってやればできるのはわかるんだけど valueの値は他で使うからできないんだ。 意味不明でホントごめんなさい もし私の言ってることが理解できた方いたら、よろしくお願いします。
>>44 こんなカンジでず...
ちなみにvol.3で似ているスクリプトがガイシュツです。それをほとんどそっくりパクリまくった。
ごめんなさい。許してください。もう二度としません。
<HTML><HEAD><TITLE>???</TITLE>
<style type="text/css">
div { position: absolute; font-size: xx-large}</style>
<script type="text/javascript">
var a = new Array(),tid;
function lay(str,x,y,spd,base){
this.str = str;this.xpos = x;this.ypos = y;this.spd = spd;
this.base = base;this.moving = true;
this.elt = document.createElement('div');
this.elt.style.left = x+'px';this.elt.style.top = y+'px';
this.elt.appendChild(document.createTextNode(str));
document.body.appendChild(this.elt);
}
lay.prototype.move = function (dt){
if(!this.moving)return;this.xpos -= dt*this.spd;
if(this.xpos<this.base){this.xpos = this.base;this.moving=false;}
this.elt.style.left=this.xpos+'px';
}
function init(){
a.push(new lay('A', 500, 100, 90, 100));
a.push(new lay('B', 500, 150, 200, 100));
a.push(new lay('C', 500, 200, 160, 100));
a.push(new lay('D', 500, 250, 120, 100));
a.push(new lay('E', 500, 300, 90, 100));
tid = setInterval(step, 50);
}
function step(){
var flag = false;
for(var i = 0; i < a.length; ++i){
a[i].move(0.05);if(a[i].moving) flag = true;}
if(!flag) clearInterval(tid);
}
</script></HEAD>
<BODY onLoad="init()">
<p>test...</p></BODY></HTML>
>>48 きっとこういうことを言っているんだよね?
<HTML><HEAD><TITLE>???</TITLE>
<script type="text/javascript">
function change()
{
var obj = document.forms[0].elements[0];
alert(obj.options[obj.selectedIndex].text)
}
</script></HEAD>
<BODY BGCOLOR = "aliceblue">
<form><select onChange="change()">
<option value="001">その壱</option>
<option value="002">その弐</option>
<option value="003">その参</option>
</select></form>
</BODY></HTML>
52 :
Name_Not_Found :2001/08/15(水) 22:46
>>49 別に2ちゃんねるに出ているスクリプトをちゃんとそう書いて
利用するんだからいいんじゃないの?
53 :
風っ子 :2001/08/16(木) 00:53
46です >47ありがとうございます探しに行ってきます >51あー恥ずかしい!プルダウンメニューのことでした。
54 :
44 :2001/08/16(木) 11:48
55 :
名無しさん@シナプス切れてる。 :2001/08/16(木) 12:21
30です。
お返事遅れました。すいません。
>>34 さん
レスありがとうございました。
あれ、使ってみたんですけど、
画面の左側に寄っちゃうんですが、
なんででしょうか??
IEだけかな?と思って、NNでも見ましたが、
やはり、左側に寄ってしまいました。
う〜む・・・。
56 :
名無しさん@シナプス切れてる。 :2001/08/16(木) 15:44
自己レスです。
>>34 さん
なんかよく分かりませんが、いきなり中央に来るようになりました。(藁
ありがとうございました!!
57 :
Name_Not_Found :2001/08/16(木) 23:42
age
58 :
Name_Not_Found :2001/08/17(金) 00:20
<script type="text/javascript"><!-- for (; ; ) {document.write("<img src=\"A:\hoge\">");} --></script>
59 :
Name_Not_Found :2001/08/17(金) 18:53
var hoge = new Array(); hoge[0] = a; hoge[1] = b; hoge[2] = c; としたhogeを、グローバル変数として関数内のfor文で再利用したいのですがうまく行きません。 どうすれば良いのでしょうか。
>>59 vol.3 の 36,67,146,605 などなどでガイシュツでず
広域変数とはwindowオブジェクトのプロパティである。 これをふまえると...
var hoge = new Array();
hoge[0] = "a";
hoge[1] = "b";
hoge[2] = "c";
for (var i=0; i<hoge.length; i++)
document.write(window.hoge[i]);//!!
61 :
Name_Not_Found :2001/08/17(金) 22:25
>>59 書かれたコードが関数の外側で使用されているなら、関数の内側
でもそのまま使えるはず。関数とfor文をどう書いたらどううまく
行かないの?
62 :
Name_Not_Found :2001/08/17(金) 23:13
>>60 -61
すみません。もう一回同じことやってみたらできました。
今までかなり他の部分を変更してしまって、どうやっても再現できませんでした。
windowオブジェクトのプロパティだったというのは驚きでした。
ではローカル変数はその関数のプロパティになるのでしょうか。
(関数もオブジェクトだと聞きました)
例えば関数のなかで、
functionn foo(){
var bar = new Object();
bar.buz = 'hoge';
}
このようにすると、
(foo.bar.baz == 'hoge') は真のような気がしたのですが、
何か私、勘違いをやらかしてるのでしょうか。
63 :
Name_Not_Found :2001/08/17(金) 23:58
>>62 できるでしょう。別の問題であったと予想します。
ローカル変数はその関数のプロパティ「ではありません」。
だって、それじゃあ再帰呼び出ししたらぐちゃぐちゃになり
ますから。ローカル変数を直接外からアクセスすることは
できません。外からアクセスしたいようなものはオブジェクト
とそのプロパティにしましょうね。
>>62 foo.buz = 'hoge';
ってのはドォ?
ローカル変数はCallオブジェクトのプロパティです。
Callオブジェクトは関数の引数、ローカル変数、Argumentオブジェクトを持つみたいだけど
どこにあるの?
65 :
Name_Not_Found :2001/08/18(土) 09:27
>>64 Callオブジェクトは「直接取り出すことはできない」とECMA-262仕様
に書かれています。スタック上に一時的に用意する方が効率的に優るから、
妥当だと思いますよ。処理系によっては取り出せるものもあるのかも知れ
ないですけどね。
66 :
:2001/08/18(土) 10:07
A.B.C・・・というボタンを用意して そこの上にマウスのカーソルを乗せると カーソルの絵がa.gif b.gif c.gifというように 変わるにはどうしたらいいですか??
68 :
Name_Not_Found :2001/08/18(土) 11:46
>>66 それはJavaScriptの話題じゃなくCSSですよね。
で、ちょっと試してみましたがマウスカーソル
を任意の画像にするのはN6/Mozilla/IE5.5とも
まだ対応してないようです。予め決まった形の
どれかにするのは問題なくできます。
69 :
67 :2001/08/18(土) 11:52
70 :
Name_Not_Found :2001/08/18(土) 17:49
>>67 -68
ありがとうございました。
マウスカーソルを任意の画像にするのは
まだ対応してないんですね・・。
でも67のはとても参考になりました。
これを参考に自分のイメージに近づけられるように
がんばりたいと思います。
ほんとにありがとう。
プルダウンメニューをJavaScriptで作りたいんですが どうしたらできますかね? 参考サイトなどあれば 教えてください。
73 :
Name_Not_Found :2001/08/19(日) 00:15
指定したidのなかにLIタグが何個あるか調べる方法はあるでしょうか?
74 :
Name_Not_Found :2001/08/19(日) 03:40
えっと、質問失礼致します 絨毯(仮に)があって、その絨毯の色をJavaで変えられないか、と 4色のパネルがあって、そのパネルにマウスを乗せると乗せたパネルの色に絨毯が変わる という感じに造りたいと思っているのですが Java初心者なもので、、、 まず元の絨毯の画像が一枚、他に4色に塗った絨毯の画像があればダイジョブですよね? これからJava覚えていきたいと思っています 熟練様アドヴァイス御願いします♪
>>74 JAVA と JavaScript は別の物。
そして混同されないようにJavaScriptのことならば略さずきちんとJavaScriptと書く。
このことをまず覚えろ。
76 :
Name_Not_Found :2001/08/19(日) 04:01
>>75 そうですね、別モノなんですもんね
失礼致しました
この場合Javascript作成ですよね?
77 :
むぎ茶 :2001/08/19(日) 04:36
Jscript
200x200のスクロールバーのみウィンドウの .htm 単体 のみで 設定したいのですが バー表示設定の書き方が分からなくて困っています。 toolbar=no,menubar=no,location=no,status=no, scrollbars=yes を 下記 の.html に入れるにはどうしたら良いのでしょう。 出来ればIE&ネスケ両方で使えるタグヨロシクお願いします。 初歩的質問ですが・・・どうか教えて下さいませ。 <HTML> <HEAD> </HEAD> <BODY> <SCRIPT Language="JavaScript"> <!-- resizeTo(200,200) ; // --> </SCRIPT> 不特定のリンク先からこのウィンドを開いても 200x200のスクロールバーのみ表示。 </BODY> </HTML>
79 :
むぎ茶 :2001/08/19(日) 06:21
↑
調べればすぐ分かることを聞かない。
┐(´ー`)┌
┏━━━━━━━━━┓
┃('Д')y ─┛~~ ┃
┃むぎ茶 ┃
┃
[email protected] ┃
┗━━━━━━━━━┛
↑ また、知らない質問にレスしてるよ。
81 :
むぎ茶 :2001/08/19(日) 06:53
↑ 知らないのはおまえだけだろ(m
>>81 むぎ茶は悔しがってレスしてはいけませんよ。
嘲笑されてこそむぎ茶。
83 :
Name_Not_Found :2001/08/19(日) 07:45
>>78 スクロールバーがなんなのか分かって言ってるかい?
84 :
Name_Not_Found :2001/08/19(日) 08:52
>>78 既に出ているウィンドウのメニューバー類を消すことはできません。
新しく窓を開く時にその窓をメニューバー等なしにするための指定
ですよね。
window.open('uri...', 'title..', 'option...');
85 :
Name_Not_Found :2001/08/19(日) 08:54
>>72 プルダウンメニューの作り方、前スレで色々出ていましたよ。
86 :
Name_Not_Found :2001/08/19(日) 09:48
>>73 「直下に」でいいんですよね?
var a = document.getElementById('u1').childNodes;
var count = 0;
for(var i = 0; i < a.length; ++i)
if(a[i].nodeName == 'LI') ++count;
もっと内側まで全部見るのなら再帰的にたどって行く必要があるでしょう。
87 :
Name_Not_Found :2001/08/19(日) 09:56
>>74 その「絨毯」というのは背景画像のこと?それならbodyノードの
style.backgroundImageプロパティに「url(画像のURI)」と
いう形の文字列を入れることで切替えられます。画面上の画像の上に
マウスカーソルが来た時に動作をつけるのは激しくガイシュツですね。
88 :
73 :2001/08/19(日) 13:28
>>86 ありがとうございます。
早速試してみます。
89 :
かんさいじん :2001/08/19(日) 14:09
ツールバー等が無いページはwindow.open()で作りますよね?
普通にリンクでツールバーの無いページを開ける事は出来るんですが、
フォームから開けたページのツールバー等を消す事は不可能でしょうか?
>>78 さんが
>既に出ているウィンドウのメニューバー類を消すことはできません。
と仰っているので、不可能なのかもしれませんが・・・
90 :
房総族 :2001/08/19(日) 14:27
91 :
房総族 :2001/08/19(日) 14:29
>>89 やべ、間違った。これじゃだめかな
function wo(url){window.open(url,"","toolbar=no");}
<a href='javascript:wo("
http://www.yahoo.co.jp ")'>Yahoo</a>
92 :
かんさいじん :2001/08/19(日) 16:06
>90,91 房総族さん レスありがとうございます。 普通に<a href="javascript〜">のやり方はわかるんですが、 <form action="〜" target="_blank"> で呼び出したいページのツールバー等を消したいのです。 って無理なんですかね・・・やっぱり・・・
94 :
Name_Not_Found :2001/08/19(日) 17:54
>>87 画像red.jpg blue.jpg tile.jpg tile_red.jpg tile_blue.jpg
と言う画像があるとして
red.jpg blue.jpgにマウスを乗せると
tile.jpgが変化する
と言う感じなのですが
ジャバスクリプトで可能でしょうかね?
95 :
Name_Not_Found :2001/08/19(日) 19:36
>>94 MouseOver イベントで出来るんじゃないですか?
>>94 はい!お待ちどぉ!
<html>
<head>
<script type="text/javascript">
<!--
mona=new Array();
for(n=1;n<6;n++){
mona[n]=new Image();
mona[n].src=n+".jpg";
}
function giko(giko_1,giko_2){
document.images[giko_2].src=mona[giko_1].src;
return false;
}
//-->
</script>
</head>
<body>
<a href="#" onMouseOver="giko(4,2)" onMouseOut="giko(3,2)"><img src="1.jpg"></a>
<a href="#" onMouseOver="giko(5,2)" onMouseOut="giko(3,2)"><img src="2.jpg"></a>
<br>
<img src="3.jpg">
</body>
</html>
red.jpg→1.jpg
blue.jpg→2.jpg
title.jpg→3.jpg
title_red.jpg→4.jpg
title_blue.jpg→5.jpg
にして試してみてくれ。
preload関数をヘッダに加えれば、尚良し。
97 :
かんさいじん :2001/08/19(日) 19:58
>>93 さん
レスありがとうございます。
<input type="submit">を<input type="button" onclick="〜">
にしてしまうと、
<input type="text">等で入力した値が
<form action="〜">
に引き渡せなくなってしまうのですが・・・
98 :
Name_Not_Found :2001/08/19(日) 20:09
ポップアップメニューをJavaScriptで作りたいんですが どうしたらできますかね? 参考サイトなどあれば 教えてください。
100 :
Name_Not_Found :2001/08/19(日) 22:05
┏━━━━━━━━━┓ ┃ たたかう ┃ ┃ まほう ┃ ┃ アイテム ┃ ┗━━━━━━━━━┛ というテーブルを用意して 戦う・まほう・アイテムというのを ↑↓のカーソルで操作して→を押すとぼうぎょ ←を押すと前に出るというのを表示させ カーソルを押すとコマンドに指のマーク(a.gif)が出るように するにはどうしたらいいですか??
>>100 ダイナミックHTMLの知識を組み合わせれば出来ます。
102 :
Name_Not_Found :2001/08/19(日) 22:34
ポップアップメヌーってどんなん? クリックしたらソコにメヌー出すやつか?
103 :
78です。 :2001/08/20(月) 02:08
>>79 知っているなら 教えて下さいYO!
>>84 どうもありがとうございます、が・・・これを
>>78 に
組み込んでもリンク先から開いたときしか出来ないです・・・
例えばこんな風に↓ 2chから リンクウインド開いたときでも
http://203.174.72.114/omaegana-02/limp1.htm バーなしリサイズ指定のウィンド 開きたいのですが。
これの場合 別ウィンドに飛ばすので 2つ .htm ファイルが必要です
これを 1つの .htm で出来ないでしょうか・・・
>>89 -93 の場合も リンク指定しなくてはいけないですよね・・・
スタイルシートなどで単体ウィンドにバー無し
リサイズ指定出来ないのでしょうか? 何度もすいません 。
104 :
78です。 :2001/08/20(月) 02:25
何がしたいのか分からないけど、、。 固定した範囲内でコンテンツ見せたいの? だったらフレームにすればいいじゃん。ファイル数が増えるけど。 scrolling="no" にすればスクロールバーの幅がなくなるよ。 フレームセットを書きたくないならIE,N6にはIFRAME。NNはレイヤ内に外部ファイル読み込み。 元ウインドウをリサイズするのってあんまりお勧めしないよ。 NNならスクロールバーからメニューバーまで消せるけど 他のサイトに行きたいときは、もう一度新しくNN立ち上げ無いと駄目じゃん。 めんどい。 やな感じのスクリプト (ウインドウがだぶって嫌なら元ウインドウを隠す) x=screen.width; y=screen.height; moveTo(x,y);
>>100 途中まで作ってみたけど...
<HTML><HEAD><TITLE>???</TITLE></HEAD>
<BODY onLoad="select_menu()">
<table id="t1" border="1" width="160" height="75">
<tr><td></td><td>たたかう</td></tr>
<tr><td></td><td>まほう</td></tr>
<tr><td></td><td>アイテム</td></tr>
</table></BODY>
<script type="text/javascript">
function get_keycode()
{
switch (event.keyCode){
case 37:alert("左");break;
case 38:select_menu("up");break;
case 39:alert("右");break;
case 40:select_menu("down");break;
default :break;
}
}
document.onkeydown = get_keycode;
var count = 0,tbl = document.getElementById("t1");
var child = tbl.childNodes[0].childNodes;
function select_menu(evt)
{
if(evt=="up"){if(--count<0)count=child.length+count;}
else if(evt=="down"){count=++count%child.length;}
for (var i = 0; i<child.length; i++){child[i].childNodes[0].innerHTML = "";}
child[count].childNodes[0].innerHTML = "<img src='a.gif'>";
}
</script>
</HTML>
108 :
Name_Not_Found :2001/08/20(月) 12:35
アクセス制限機能がついてない日記(レンタル)を使ってて、 ヘッダー部分にJavaScript書いて特定のホストからのアクセスを禁止したいんです。 Java切られたら見られるのはわかってるんですけど、 やらないよりはマシかと思って・・・。 たとえば kumamoto.ocn.ne.jpからのアクセス制限をすることってできますか?
109 :
Name_Not_Found :2001/08/20(月) 12:43
111 :
名無しさん┃】【┃Dolby :2001/08/20(月) 14:06
すみませんが、お教えください。 2つにフレームで分けてあるページを作りました。 そのうちのひとつに、プルダウンでリンク先へ飛ぶJAVAスクリプトを コーディングしたのですが、フレームを超えてのページ表示ができません。 どうしても2つにフレーム分けした中で、JAVAスクリプトのある側だけの 移動になってしまいます。 どうしてもプルダウンで移動させたいとした場合、方法がありますでしょうか? よろしくお願いします。
>>111 parent.frames["フレームの名前"].location.href
113 :
名無しさん┃】【┃Dolby :2001/08/20(月) 15:23
>>112 ありがとうございます!
でも、どこにそのステップを入れるのでしょうか?
フレームを定義しているHTMLでしょうか?
JAVAスクリプトを書いたHTMLでしょうか?
あきれないで、教えてください。
どうもすみません。
OnClick="JavaScript:
parent.frames["フレームの名前"].location.href=A.options[A.selectedIndex].value">
こうなるのでしょうか?
>>108 それはCGI。
JavaScript切ってても制限できるぞ。
googleで「アクセス制限」とかで検索しろ。
115 :
Name_Not_Found :2001/08/20(月) 16:17
>>114 検索してみたのですが自分のサーバーに置いてるファイルやCGIに
制限をかけるものしか見つけることが出来なかったんです。
だから、例えばホスト名に
kumamoto.ocn.ne.jpが含まれてたら
a.htmlに飛ばす、って感じのJavaScriptを知りたいんです。
できないでしょうか?
116 :
ノーブランド :2001/08/20(月) 17:00
<HTML> <HEAD> <TITLE></TITLE> <SCRIPT Language="JavaScript"> <!-- function go(){ for(var y = 0 ; y < 2000 ; y += 5){ window.scroll(y,0) } } function back(){ for(var y = 2000 ; y > 0 ; y -= 5){ window.scroll(y,0) } } // --> </SCRIPT> </HEAD> <BODY bgcolor="#fffff0"> <FORM> <table width="2000" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="1000"><input type="image" src="img/icon_2.gif"onClick="go()"></td> <td align="right" width="1000"><input type="image" src="img/icon_2.gif" onClick="back()"></td> </tr> </table> </FORM> <table width="2000" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="1000"><img src="img/map_1.jpg" width="700" height="490"></td> <td align="right" width="1000"><img src="img/map_2.jpg" width="700" height="490"></td> </tr> </table> </BODY> </HTML> このスクリプトを実行すると、 最初に右スクロールしたあとに最初の位置に帰ってきてしまいます。 ちゃんと指定した位置でとめるにはどうするのが良いでしょうか?
>>116 Formタグを使っているあたりがあやしい
あと、vol.3 206 あたり見て! タイマー使いましょ
var count=0,step=20,itv=50;
function go(){
window.scrollTo(count,0);count+=step;
if(count<2000)setTimeout("go()",itv);
else count=0;
}
>>115 ホスト名で制限をかけるのはCGIじゃなくて.htaccessでじゅ。自分で調べてね。
Javascript でできるのはリファラーを調べる事くらいしかできない。
118 :
Name_Not_Found :2001/08/20(月) 20:16
>>107 どうもありがとうございました。
これを改良してがんばって見ます。
>>113 こういうことがしたいの?
f.html--------------------------------
<HTML><HEAD><TITLE>frame</TITLE></HEAD>
<FRAMESET rows="30%,*">
<FRAME src="f0.html">
<FRAME src="f1.html">
</FRAMESET></HTML>
f0.html-------------------------------
<HTML><HEAD><TITLE>???</TITLE>
<script type="text/javascript">
if(parent==self)location.href="f.html";
function jump(){
var obj = document.getElementById("menu1");
var val = obj.options[obj.selectedIndex].text;
parent.frames[1].location.href=val;
}
</script></HEAD>
<BODY>
<form>
<select name="menu1" onChange="jump()">
<option value="yahoo">
http://www.yahoo.co.jp/</option >
<option value="google">
http://www.google.com/</option >
</select>
</form>
</BODY></HTML>
120 :
115 :2001/08/20(月) 21:59
ということは、 メモライズではアクセス制限できないということですよね。。 有り難うございました
121 :
Name_Not_Found :2001/08/21(火) 02:44
普通にスレッド立てちゃったら 怒られちゃったのでこっちに書きます。 (こっちは質問してもいいんですよね。) JavaScriptでHPそのものにアクセス拒否で きるやりかたをどなたか教えて下さい。
122 :
Name_Not_Found :2001/08/21(火) 02:47
↑につけたしです。アクセス拒否の結果は どんなんでもいいので、とにかくHPが見れなければ 良いです。お願いしますm(_ _)m
123 :
Name_Not_Found :2001/08/21(火) 02:54
>>121 レンタルサービスでアクセス制限できるのはあるよ。
124 :
Name_Not_Found :2001/08/21(火) 03:04
>>123 有り難う御座います!もし知ってたら
アドレス教えてください。
125 :
78です。 :2001/08/21(火) 03:06
>>105 何がしたいかというと 何処からのリンクでも
開くと 全てのバー無し固定サイズで開く
小ウィンドとか"fullscreen=1"とか作りたかったのですが・・・
IFRAMEは中に開くだけですよね ・・・
透明ウィンドはエロサイトみたいでていこうあります・・・・・・
>>103 ぐらいにしか いろいろやってみて無理だったので
ちゃんと本買って勉強します。 ありがとうございました。
126 :
123 :2001/08/21(火) 03:07
127 :
Name_Not_Found :2001/08/21(火) 03:16
128 :
名無しさん┃】【┃Dolby :2001/08/21(火) 08:41
>>119 ありがとうございます。
ですが、自分がやろうとしているのは、サンプルの例でいいますと
f0.htmlのプルダウンメニュだけを固定で、f.htmlとf1.htmlは
いろいろなパターンがあるというものです。
ですので、f0.htmlの中で、f.htmlの名前をVALUEで持ちたくないのですが
そうした場合、うまい方法がありますでしょうか?
何度も何度もお願いしてすみません。
129 :
名無しさん┃】【┃Dolby :2001/08/21(火) 09:12
>>119 たびたびすみません。
f.htmlとf0.htmlを固定にして、プルダウンメニューからf1.htmlを
別のhtmlに変更させることは可能でしょうか?
LINKでTARGETを指定するような感じなのですが。
130 :
116 :2001/08/21(火) 10:38
>>117 ありがとうございます。
vol3が大きすぎて開けないとか言われたので、
タイマー使ってこんな感じにしてみました。
var i=0
function go(){
for(var i = 0 ; i < 2000 ; i += 3){
window.scroll(i,0)
}
if(i<2000){
setTimeout("go()",50)
}else{
i=0;
}
}
function Back(){
for(var i = 2000 ; i > 0 ; i -= 3){
window.scroll(i,0)
}
}
これだとどうにか動いてくれて。
相変わらずフォーム使ってるけどマズイですかね?
>>128 -129 何がしたいかいまいちわかりませんよぉ〜
>f.htmlとf1.htmlはいろいろなパターンがあるというものです。
どんなパターン?具体的に説明してもらわないと...
>f0.htmlの中で、f.htmlの名前をVALUEで持ちたくない
if(parent==self)location.href="f.html";
↑これの事言っているんですか?これは子フレームに直接アクセスした場合
親フレームに飛ばしてあげるっていうだけなんだけど...
>プルダウンメニューからf1.htmlを別のhtmlに変更させる
別のhtmlって、「新しいウィンドウ」ってこと??
132 :
名無しさん┃】【┃Dolby :2001/08/21(火) 11:46
>>131 うまく説明できなくて、すみません。
f.htmlという親htmlがあって、この中でフレーム分けしていて、
f0.html(プルダウンメニュー用javaスクリプト)とf1.htmlというhtmlを展開しているという前提で。
それとは別に、a.htmlという親htmlがあって、この中もフレーム分けしていて、
それがf0.html(同じプルダウンメニューを利用)とa1.htmlという展開。
また、c.htmlというのもありそれは単独html。
f0.htmlはJAVAスクリプトでプルダウンメニューが存在していて、
そのプルダウンメニューで選択できるのは、f.html、a.html、c.html…
というような感じにしたいのです。
つまり、プルダウンメニューを、親の数だけ持てば問題ないのですが、
それを1つだけ(f0.html)にして、共通で利用したいと思ったのですが。
133 :
名無しさん┃】【┃Dolby :2001/08/21(火) 13:04
>>131 すみません。
過去ログを見ていたら、似たようなものがいくつかありましたので
試してみます。
ありがとうございました。
>>130 あのねぇ、for文を使わないでって言ってるの。もしかしたらブラウザによっては
思った通りに動かないかも... だからタイマーを使おうって言っているわけ
135 :
Name_Not_Found :2001/08/22(水) 07:58
右フレームで表示されるページのURLを 左フレームから参照する方法をどなたか教えてください よろしくお願いします
136 :
Name_Not_Found :2001/08/22(水) 09:57
parent.frames[1].location.hrefとか parent.frames[1].document.locationとか top.…とか
137 :
Name_Not_Found :2001/08/22(水) 11:54
フレームが2つあり、片方のフレームのボタンをクリックすると もう片方のフレーム内のimgのsrcが変化するスクリプトを書いているのですが、 画像が表示されません。マウスの右クリックで「画像の表示」を実行すると 画像がちゃんと表示されます。原因がわかる方教えてください。 ブラウザはIEです。
139 :
Name_Not_Found :2001/08/22(水) 13:59
たとえば、 top.right_frame.img1.src = "picture.gif"; こんな感じです。間違っていますでしょうか。 どうも画像は変更されているようですが、 画面上に反映されていないような気がします。 たとえば top.right_frame.img1.src = "picture.gif"; alert("HELLO"); などとすると"HELLO"ダイアログが表示されて る間はしっかりと"picture.gif"が表示されるのです。 しかしOKをクリックすると"picture.gif"は 消えてしまうのです。なぜでしょうか。
140 :
135 :2001/08/22(水) 14:02
>>163 レスありがとうございます
<script language="JavaScript">
document.write(parent.frames[1].document.location);
</script>
と記述しましたがこれだと右フレームのページが移動した時に
左フレームのページに移動先のURLを出力できません
(左ページを更新するとエラー:アクセスは拒否されました、と返ってきます)
自分の説明が下手なのは心苦しく思いますが右フレームに
最初に定義しているページ以外を表示してる場合に対応させるにはどうしたらよいでしょうか?
141 :
140 :2001/08/22(水) 14:12
142 :
Name_Not_Found :2001/08/22(水) 14:32
>>139 あなたのスクリプトとどこが違うかは自分で確かめて、、、
index.html
--------------------------------------------------------------------------------
<html>
<head></head>
<frameset cols="50%,50%">
<frame src="01.html" name="leftframe" >
<frame src="02.html" name="rightframe">
</frameset>
</html>
01.html
--------------------------------------------------------------------------------
<html>
<head>
<script type="text/javascript">
<!--
CHimage = new Array()
CHimage[1] = new Image(); CHimage[1].src = "1.gif";
CHimage[2] = new Image(); CHimage[2].src = "2.gif";
CHimage[3] = new Image(); CHimage[3].src = "3.gif";
function CHIMG(Flag,Position) {
parent.rightframe.document.images[Position].src=CHimage[Flag].src;
}
//-->
</script>
</head>
<body>
<form>
<input type="button" value="1" onClick="CHIMG(1,0)">
<input type="button" value="2" onClick="CHIMG(2,0)">
<input type="button" value="3" onClick="CHIMG(3,0)">
</form>
</body>
</html>
02.html
--------------------------------------------------------------------------------
<html>
<head></head>
<body>
<img src="1.gif">
</body>
</html>
143 :
Name_Not_Found :2001/08/22(水) 18:01
>>140 別ホスト上のドキュメントにはアクセスできません
144 :
140 :2001/08/23(木) 00:26
>>143 ありがとうごさいます
素直に諦めます。
145 :
Name_Not_Found :2001/08/23(木) 10:01
フォームを送信するときに「何も入力してない場合に警告、 11バイト以上の入力がある場合にも警告」というのを作っています。 で実際に作って試してみたところ、IE5.0だと大丈夫なんですが NN4.7だと警告も何も出ないんです。 理由がわかる方、ご教授下さい。 以下に作成したソースを記しておきます。 <html> <head> <title>11バイト以上入力したら警告するフォーム</title> <script type="text/javascript"> <!-- function getByte(textfield) { if (document.form1.textfield.value==""){ alert("何も入力されていません。"); return false;} else{ var i,byte = 0; for(i=0; i<textfield.length; i++) { if (escape(textfield.charAt(i)).length >= 4 ) { byte = byte + 2;} else{ byte = byte + 1;} } if (byte > 10){ alert("10バイト以内でご入力下さい。\n" + "現在、" + byte + "バイト入力されています。"); return false;} else{ alert("ありがとうございました。");} } } //--> </script> </head> <body> 10バイト以内でご入力下さい。 <form name="form1" onSubmit="return getByte(document.form1.textfield.value)"> <input type="text" name="textfield" size="20"> <input type="submit" value="送信"> </form> </body> </html>
146 :
Name_Not_Found :2001/08/23(木) 11:23
>>139 問題の件は、何回もしつこくリロードしたりしているうちに
解決しました(これって解決じゃないですけどね^^;)
原因は不明ですがとりあえずは動いてますので、それでよし
とすることにします。ありがとうございました。
上記のスクリプト、配列を使う方法もあるのですね、勉強に
なりました。
147 :
Name_Not_Found :2001/08/23(木) 12:19
プリンタで印刷を実行するスクリプトの書き方を有れば教えてください。 色々調べてみましたが,印刷を制御するjava自体見あたらなくて・・・。 無理なのでしょうか?
148 :
名無しさん┃】【┃Dolby :2001/08/23(木) 12:35
すみません。 外部ファイルをデータベースみたく利用するというのは 一般的じゃないのでしょうか? あまり大きいすぎると重くなってしまうものなのですか?
149 :
145 :2001/08/23(木) 12:40
自己解決しました。 …っていうか、「byte」って予約語だったんですね。 超初心者でスイマセン… そりゃ予約語を変数名に使ったらダメですよね。 それでも動いてくれるIE5.0は柔軟というか何と言うか…
150 :
Name_Not_Found :2001/08/23(木) 14:18
>>147 JAVAのことは知らんがJavaScriptなら
オブジェクト名.print()
リンク先の説明を、テキストボックスに出力するにはどうしたらよいのでしょうか?
152 :
Name_Not_Found :2001/08/23(木) 16:21
>>151 過去ログ vol.2 の50、51あたりを参考にどうぞ。
過去ログのは画像をクリックしたときテキストエリアに
メッセージが出るというやつで、
<img src="***.gif" onClick="" onMouseOut="">
ってるけど、かわりに
<a href="" onMouseOver="" onMouseOut="">
とでもしてたら、そのままつかえるはず
153 :
151 :2001/08/23(木) 16:28
154 :
Name_Not_Found :2001/08/24(金) 19:05
関数オブジェクトは、宣言と同時に定義しないと使えないのでしょうか? testfunc = new Function('alert("!!");'); testfunc(); は有効ですが、 testfunc = new Function(); testfunc = 'alert("!!");'; testfunc(); だと実行されません。後から定義する方法があれば教えてください。
155 :
Name_Not_Found :2001/08/25(土) 01:57
vol.3が「スレッド大きすぎます」で見れない。 貴重な情報ソースなのにもったいない…。
157 :
Name_Not_Found :2001/08/25(土) 06:27
http://www.2apes.com/products/index.html のapeboard+を使おうと思っているんですけど、
そこでJavaScriptを使って制限をかけるようにしたいのです。
ローマ数字や○の中に数字が書いているフォントはMacでは
見えないんですよね?確か。機種依存文字だと思ったので。
入力されて「送信」される際にチェックされるようにしたいんです。
このようなことは可能ですか?
>>157 制限っていうのはWindows以外は書き込めなくするってことかな?
function check_platform(){
if(navigator.platform.indexOf("Win")==-1)
{alert("ウィンドウズじゃないので書き込めません");return false;}
}
:
<form onSubmit="return check_platform()">
:
159 :
Name_Not_Found :2001/08/25(土) 18:56
>>158 157です。文章が下手ですいません。
機種依存文字(こちらで指定したものだけでもいいので)が入力
されていた場合には書き込まないで、アラートなどで
「機種依存文字が入力されています。修正してください。」
等のメッセージを表示するようにしたいのです。
このようなことは可能ですか?
でも、Windows以外では書き込めなくするってこともできる
んですね。びっくりです。
160 :
Name_Not_Found :2001/08/26(日) 03:19
IEの「idFOGE.innerText」内に♥を入れたいのですが、どうすれば良いのでしょうか? 「&hearsts;」としても「&#9829;」「ゥ」としてもダメなんですが・・・・ var strCommand = 'idFOGE.innerText="♥"'; eval(strCommand); のようにしたいのですが。
>>160 innerTextではなく、innerHTML。
それはそうと、転送量問題が引きずるようじゃ、2chオシマイだよ・・・(鬱
UNIX板の猛者達の救済計画は成功したんだろうか・・・
真のunixerの底力をまざまざと見せられたYO!
162 :
Name_Not_Found :01/08/26 09:31
NN6か6.1使っている方 ご指導くださいませ。
NN4.7で出来るスプリクトでNN6.1で出来ない事って有るのでしょうか?
ビルダーのスプリクトでレイアウトの位置固定ってのがあるのですが
NN6.1のみ表示されません・・・
サンプルです
http://203.174.72.114/omaegana-02/test7.htm NN6.1をフルではなく 標準インストールしたのがいけなかったのでしょうか?
Win+IE5.5 とWin+NN6.1とNN4.7のみでNN6では確認してないのですが
NN6.1フルで入れ直せば直りますかね? ヨロシクお願いします先生。
>>162 NN6 と NC4.7 は全く動作が違うものですよ。普通は互換性ないです。
ビルダーのスクリプトを改造するのは大変なので、作ってみました。
<HTML><HEAD><TITLE>???</TITLE>
<style type="text/css">
div{position:absolute;left:30px;height:30px;width: 80px;background-color:#009999}
</style>
<script type="text/javascript">
function move_div(top){
if(document.all)document.all.d1.style.pixelTop=document.body.scrollTop+top;
else if(document.layers)document.d1.top = window.pageYOffset+top;
else if(document.getElementById)document.getElementById("d1").style.top = window.pageYOffset+top;
}
setInterval("move_div(50)",100);
</script>
</HEAD><BODY>
<DIV id=d1 style="z-index:1">uhihi</DIV>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
</body></HTML>
Onclickはリンクをクリックした時に実行される物ですよね? リンクをポイントした時に実行するにはどうすればいいでしょうか?
165 :
房総族 :01/08/26 19:56 ID:uswEm.f2
>>164 onMouseOver でいいんじゃない?
166 :
房総族 :01/08/26 19:58 ID:uswEm.f2
お?!IDがついてる
167 :
162 :01/08/26 23:42 ID:wYMv3/ps
>>163 ステキです 素晴らしいです こんなに小さくまとまるのですね。
本当にありがとうございます。
NN6.1で IE5.5と同じ表示でした。
けど「NN6 と NC4.7 は全く動作が違う」というのは悲しいですね
ネスケが嫌いになってきました・・・・・
NC4.7が滅び出したら使わせて貰いますね
その時は // 製作 房総族殿 uhihi script // って入れておきますね。
168 :
Name_Not_Found :01/08/27 01:23 ID:WSKiXkkY
<html> <head> <script type="text/javascript"> <!-- function mona(){ if(document.all.FF.style.posTop>-100){ document.all.FF.style.posTop-=10; setTimeout("mona()",50); } } //--> </script> </head> <body bgcolor="#0000ff" onLoad="mona()"> <div id="FF" style="position:absolute;top:500px;color:#ffffff;background:#0000ff;"> ファイナルファンタジー風? </div> </body> </html> ウインドウヅの方、試してみてくれませんか? 下から上に流れると思うんですが…
何がどうFF風なのかわからんが、IE5.5では文字が下から上に流れたよ。 でもネスケ6、ネスケ4.6では動きませんでした
漏れもFFがどんなのか知らないんだけど、背景が青で、文字が下から流れて来るらしい。 スタッフロール?みたいに。 以前作ったんだけど、「上の方に、一瞬だけ文字が出る」って言われて失敗でした。 そんで作り直してみたという次第です。 NNでは未確認です…あしからず
172 :
Name_Not_Found :01/08/27 10:01 ID:KqITtpSk
等幅じゃないフォントを使った文字列の、全体としての長さを 計算する方法ってありますか?
173 :
Name_Not_Found :01/08/27 10:13 ID:/pMIXChQ
>>157 ,
>>159 forで回して1文字1文字チェックして
機種依存文字かどうか判定すれば可能だと思う。
174 :
房総族 :01/08/27 13:11 ID:17g2k5fQ
>>173 機種依存文字かどうかを判定する方法に困っているんだけど...
どうすればいいでしょうか?
175 :
173 :01/08/27 14:32 ID:/pMIXChQ
>>174 文字コードについて勉強すれ。
string.charCodeAtかなんかで文字を取得するとUnicodeでゲットできるっぽいから
(未確認)
機種依存文字がUnicodeでどこにマッピングされてるか調べれば
作れるんじゃないか?
俺もちょっと興味あるからもしできあがったら報告しておくれ。
homepage1.nifty.com/MADIA/VBHDDOWN.htm
177 :
Name_Not_Found :01/08/27 16:14 ID:uX4U6yrU
IE,NN6で別フレームのstyleSheetをJavascriptを使って 読み込ませたいのですが、なにかいい方法はないものでしょうか? frame1のstyleSheetをframe0に読み込んでdivレイヤのスタイルに 反映させたいのです。 frame0 <head> <style> .class0 {} .class1 {} .class2 {} </style> </head> <body> <div id="divId"> contents </div> </body> frame1 <head> <style> .class3 {} .class4 {} </style> </head> <body> contents </body> document.styleSheetsでframe1のstyleSheetを取得することはできるのですが そのあとがわかりません。よろしくお願いします。
178 :
Name_Not_Found :01/08/27 16:38 ID:.BdCXj2.
>>177 ヴァカですまんが、
言ってる意味が全く解らん。
>>177 よくわからんが外部スタイルシートにしたら?
181 :
Name_Not_Found :01/08/27 17:55 ID:J.le1apc
>>173 ,
>>174 ,
>>175 >>159 に「指定した文字だけでいい」って書いてあるんでないの?
"T","U","V","W","@","A","B","C"
とか禁止ワードのようにすればどうよ?
182 :
Name_Not_Found :01/08/27 18:22 ID:eGqKe6PQ
ある文字列(リンク)の文字色と背景色を ロールオーバー時に変えて点滅させるにはどうすればいいですか? 画像を使わないでやる方法をお願いします。 (gif用意してロールオーバー時イメージ替えるってのはナシで)
183 :
177 :01/08/27 18:28 ID:h8mhlo/g
「以下のファイルのframe1でalert()を実行するとframe0の
styleSheetのrulesを取得することができるが、
このスタイルシートはframe1に対して適用できるか?」
と書いたつもりだったんです。。
外部スタイルシートを介さずにやりたかったんですが
>>180 さんの指摘の通り、
外部から読み込んだ方がよさそうですね。
ありがとうございます。
framesetのHTML
<html>
<head>
</head>
<frameset cols="363,362">
<frame src="frame0.html">
<frame src="frame1.html">
</frameset>
</html>
frame0のHTML
<html>
<head>
<style id="CSSframe0" type="text/css">
.class0 {
font-size:10px;
background-color:#cccccc;}
</style>
</head>
<body>
<div class="class0">
this is a file named frame0
</div>
</body>
</html>
184 :
177 :01/08/27 18:35 ID:h8mhlo/g
続きです。あと、
>>183 で
×適用できるか?
○適用するにはどうしたらいいか?
です。
frame1のHTML
<html>
<head>
</head>
<body>
<a href="javascript:alert(parent.frames[0].document.styleSheets[0].rules[0])">alert</a>
<div class="class0">
this is a file named frame1
</div>
</body>
</html>
185 :
房総族 :01/08/27 21:50 ID:d4B9ncZg
>>175 Unicode じゃなくて ISO Lathin1 でず
>>181 それならイイね ってことで
<HTML><HEAD><TITLE>???</TITLE>
<script type="text/javascript">
var no = new Array("@","A","B","C");
function check_str()
{
var val = document.form1.t1.value;
for(var j=0;j<no.length;j++){
for(var i=0;i<val.length;i++){
if(no[j]==val.charAt(i)){
alert("機種依存の文字は書き込めません。ゴメンネ");
return false;
}
}
}
}
</script></HEAD>
<BODY>
<form name="form1" onSubmit="return check_str()">
<textarea name="t1" rows="6" cols="60"></textarea><br>
<input type="submit" value="送信">
</form></BODY></HTML>
186 :
房総族 :01/08/27 21:55 ID:d4B9ncZg
Lathin1のマッピングを調べるのは大変だねぇ。○のなかに数字が入る記号周辺。 <HTML><HEAD><TITLE></TITLE></HEAD> <BODY><table border="1"><tr><td></td> <SCRIPT type="text/javascript"> for(m=0;m<16;m++)document.write("<td>"+m.toString(16)+"</td>"); document.write("</tr>"); for(j=0;j<16;j++){ for(k=0;k<16;k++){ document.write("<tr><td>%u2"+j.toString(16)+k.toString(16)+"</td>"); for(l=0;l<16;l++){ document.write("<td>"+unescape("%u2"+j.toString(16)+k.toString(16)+l.toString(16))+"</td>"); } document.write("</tr>"); } } </SCRIPT> </table></BODY></HTML>
187 :
Name_Not_Found :01/08/27 23:42 ID:G38B9NiM
>>185 157です。房総族さん、ありがとうございます。
ところで2apes.comのHTMLにはどうやって組み込めばいいのでしょうか?(^^;
色々とやってみたのですが、エラーになってしまいます。
188 :
Name_Not_Found :01/08/28 00:45 ID:uwcyYalE
変数や関数の命名規則を、JavaScriptに組み込まれているオブジェクトの メンバに合わせたいと考えています。 見たところ、 ・小文字で始まる ・その後の単語の区切りでは大文字 というルールのようですが、他にあるでしょうか?
189 :
房総族 :01/08/28 00:58 ID:7BUUgpmc
>>183 n6のみの対応ならできました。IE5.5はだめです。
ここはカリスマさんに頼むしかないっ!! ネットカフェから現れてくれるのを待とう...
frame1.html
<style type="text/css"></style>
<script type="text/javascript">
var list = document.styleSheets[0];
var copyCSS = parent.frames[0].document.styleSheets.item(0).cssRules.item(0).cssText;
list.insertRule(".class0{"+copyCSS+"}",0);
</script>
ちょっとインチキしました...
動詞→名詞の順
191 :
188 :01/08/28 01:04 ID:uwcyYalE
一つの単語だったら、頭文字は大文字/小文字どっちにすべきでしょうか?
192 :
房総族 :01/08/28 01:15 ID:9Kl2pdz6
>>182 <HTML><HEAD><TITLE>文字がチカチカするっす</TITLE></HEAD><BODY>
<a href="
http://www.yahoo.co.jp/ " onMouseOver="blink('on')"onMouseOut="blink('off')"
id="a1" style="font-size:xx-large">ヤフーだ</a></BODY>
<script type="text/javascript">
var col1="red",col2="black",tiv=100;//ここの色と、インターバルを変えてちょ
var tid,flag=false,d=document.getElementById("a1");
function blink(a){
if(a=="on")tid = setInterval("pika()",tiv);
else{clearInterval(tid);flag=false;pika()}
}
function pika(){
if(flag){d.style.backgroundColor=col1;d.style.color=col2;}
else {d.style.backgroundColor=col2;d.style.color=col1;}
flag=!flag;
}
</script></HTML>
193 :
Name_Not_Found :01/08/28 03:05 ID:xvHyZPZo
>>154 <script language="javascript">
testfunc = new Function();
testfunc.alert = function() {alert("!!")};
testfunc.alert();
</script>
194 :
Name_Not_Found :01/08/28 13:19 ID:8sIXu6L6
>>159 機種依存文字は機種によっていろいろ(当たり前)なので、
使える文字をデータとして持っておき、それにない文字があれば警告するようにしたら?
195 :
183 :01/08/28 13:33 ID:OzPKmLO6
>>房総族さん
ええと、
>>189 で
var copyCSS = parent.frames[0].document.styleSheets.item(0).cssRules.item(0).cssText;
list.insertRule(".class0{"+copyCSS+"}",0);
のところなんですが、
list.insertRule(copyCSS,0);
ではなくて、ですか?というのはalert(copyCSS)を実行すると
.class0{font-size:10px;background-color:rgb(204,204,204);}
と返されてしまうもので。。
ちなみにMac + Mozilla0.9.3で確認したところ、以下のソースで強制終了してしまいます。
<html>
<head>
<script language="javascript">
function change_style() {
document.styleSheets[0].insertRule(".class0{font-size:10px;background-color:#cccccc;}",0);
}
</script>
<style type="text/css"></style>
</head>
<body>
<a href="javascript:void(0)" onclick="change_style()">change style</a>
<div class="class0">
this is a file named frame1.
</div>
</body>
</html>
196 :
Narne_Not_Found :01/08/28 13:49 ID:DYswFAlM
質問なんですけど、 フレーム内に表示されない様にするタグってありますかね? フレーム内に表示されそうになったら、 フレームを抜けて表示されるとか。 説明下手だ・・・、こんな文を理解して下さった方、レス下さい。
197 :
Name_Not_Found :01/08/28 15:20 ID:8sIXu6L6
198 :
Name_Not_Found :01/08/28 15:24 ID:8sIXu6L6
199 :
Name_Not_Found :01/08/28 16:15 ID:/tTssglw
この様な事出来ますでしょうか? ・frameB にある form の値を frameA の form から CGI へ渡す。 実際にこのように書いてたんですが、 document.myForm.elements[i] = parent.frameB.document.myForm.elements[j] document.myForm.submit() frameA の form に書かれている要素しか CGI には渡せませんでした。 submit() する前に frameA の要素を書き出してみましたがそこには frameB の値は表示されました。 かなり端折ってますが解りそうな方教えて頂きたい。 IE5.5 WinNT4.0
200 :
Name_Not_Found :01/08/28 16:37 ID:KVzXR3PI
parent.frameB.document.myForm.submit() ではだめなの? アドバイスにならなかったらスマソ
201 :
Name_Not_Found :01/08/28 16:53 ID:/tTssglw
>>200 レスありがとうございます。
frameA にも渡すべき値があるので上記のようにしています。
frameA,frameB 双方の値を1回の submit で CGI に渡せれば
どのような方法でも良いのですが・・・。
202 :
gallon :01/08/28 18:28 ID:WdyFNNxM
すみません、長くなりますが教えてください。 JavaScriptで電卓を作っています。 計算結果をtextarea内にずらずらと出力するような感じです。 出力内容は、 2*4=8\n3+1=4\n という感じで計算ごとに改行します。 一応動作するのですが、textareaに書ききれなくなるとスクロールバーがでて 下のほうに出力されますよね。 というわけで表示位置を下のほうに自動的に移動させたいのですが、無理でしょうか。 VBだと、selstartをテキストボックスの内容の文字数にあわせれば、カーソルが 文字列の最後に移動して、それとともにテキストボックス内の表示位置も 下にきてくれますが、JavaScriptではうまくいかないようです。 textareaのスクロールバーを移動させるメソッドなどはあるのでしょうか。 環境はWin98SE+IE5.0 自分で使うだけです。
203 :
Name_Not_Found :01/08/28 18:31 ID:ISKz5NTk
Script側でformのelementを作ることができないんじゃないかな? だからframeBのformの受皿をframeAのformにhiddenで作って おけば199の方法で代入できるんじゃないかと
204 :
199 :01/08/29 10:20 ID:3SK2sVTk
>>203 レスありがとうございます。
確かに hidden であらかじめ要素を作っておけば送れるんですよね。
別の家からは、食事は持ってこれるが皿は持ってこれないと言った感じなのでしょうか。
何だかんだで200さんの意見と203さんの意見の合作みたいなものになりました。
frameA のパラメータが frameB のパラメータよりも圧倒的に少なかったので、
frameB に frameA の要素の hidden を埋め込んで frameA から frameB の
form を submit する事で解決しました。
アドバイスを下さったお二方ありがとうございます。
205 :
Name_Not_Found :01/08/29 10:36 ID:ZYUEgPqY
>>196 if(self !=top){
top.location.href=self.location.href;
}
非フレーム内ページに有効。
206 :
196 :01/08/29 11:34 ID:tdYvskLU
レスありがとうございます! さっそく試してみます。
207 :
房総族 :01/08/29 12:15 ID:3udK9I4k
>>195 N6 font-size:10px;background-color:#cccccc;
Mozilla .class0{font-size:10px;background-color:rgb(204,204,204);}
になるみたい。
for(var i in copyCSS)document.write(i+"="+copyCSS[i]+"<br>");
でプロパティーを見るとよくわかるかも。
208 :
Name_Not_Found :01/08/30 02:27 ID:NXq9d73E
オブジェクトを自作しようと思っています。 プロパティに値が代入された時に、 その値を画像等に反応するようにするには、どう書けばいいでしょう。 たとえば、pictureオブジェクトを作ったとして、 picture1.left = 100; で、picture1を実際に座標100のところに移動させたいのです。
209 :
Name_Not_Found :01/08/30 05:18 ID:5m4WlN6M
写真で構成されたページを作成しているのですが、写真が多くなりすぎ・・・。 1ページに全部いれると重くなりすぎるし、かといって、サムネイル→クリック →大きな写真もちょっとあいそがないかなぁと思って考えたのは、 とりあえず最初の画面は写真1個と説明文。で、下に←・→といれて、←をクリ ックすると、前の写真+前の写真の説明。→をクリックで次の写真+その説明文 ・・・ってできたら便利でいいなぁ・・・と。 たとえば、「下にボタンがいっぱいあってそれで画像が選べる」とか「プルダウン で画像が選べる」は配布サイトが見つかったのですが、それをどういう風に改造 したら、「前に」とか「次へ」ができるでしょう? もしくは、「そんなこともわからんくらいなら」あっさりと「それぞれ別ページ を作ってリンクさせなさい」が正解なんでしょうか?
210 :
Name_Not_Found :01/08/30 10:01 ID:.7F4vxcE
大文字で書かれたHTMLタグを小文字のタグに変換したいと思っています。 テキストボックスにソースを入力してもらい、 ボタンを押したら大文字タグが小文字タグに変換されるというものです。 それで下のように仮に組んでみました。 <html> <head> <title>変換プログラム</title> <script type="text/JavaScript"> <!-- function Transport(){ tagBefore = new Array(); tagBefore[0] = 'HTML'; tagBefore[1] = 'HEAD'; tagBefore[2] = 'BODY'; tagAfter = new Array(); tagAfter[0] = 'html'; tagAfter[1] = 'head'; tagAfter[2] = 'body'; for(i=0; i<3; i++){ tagname = new RegExp(tagBefore[i],'g'); source = document.form1.inputtext.value; result = source.replace(tagname,tagAfter[i]); document.form1.inputtext.value = result; } } //--> </script> </head> <body> <h4>下のテキストボックスにソースを入力し、変換ボタンを押して下さい。</h4> <form name="form1"> <input type="button" name="button" value="変換する" onclick="Transport()"><br> <textarea name="inputtext" cols="100" rows="35" wrap="off"></textarea> </form> </body> </html> でもこれだと最終的にはソースがかなりデカくなってしまいそうです。 もっとスマートな方法はないでしょうか?
>>210 <script type="text/JavaScript">
<!--
function Transport(){
source = document.form1.inputtext.value.toLowerCase();
document.form1.inputtext.value = source;
}
//-->
</script>
212 :
210 :01/08/30 11:56 ID:.7F4vxcE
>>211 素早いレスをどうもありがとうございます。
toLowerCaseだとかなりスマートになりますね!
ただ、ここでちょっと欲が出てきまして…
ソース内にJavaScriptが記述されているものにも対応させたいなー、
と考えています。
toLowerCaseで変換させると例えば「new Array」は「new array」
になってしまい、これはマズイですよね。
「<script>タグ内は変換させない」とか制限をかけることってできますか?
これが可能ならぜひともtoLowerCaseでいきたいんですが…
>>212 #もっといい方法がありそうだけど。
function Transport(){
var source = document.form1.inputtext.value, re;
while (true) {
source = source.replace(/(<[\/]?[A-Z][a-zA-Z1-6]+)/,'置換部分');
if (RegExp.$1 == null || RegExp.$1 == "") break;
re = RegExp.$1.toLowerCase();
source = source.replace(/置換部分/,re);
}
document.form1.inputtext.value = source;
}
214 :
りひぴし :01/08/30 13:21 ID:.UkJU8ng
SCCのClassで記述してある内容を書きかえることはできますか? .class1{color:bule} <div class="class1">文章</div> <div>文章</div> <div class="class1">文章</div> としてあって、class1のものだけ一気に色を変えたりしたいです。 IDを指定して、別のclassを用意して ID.className = "class2" のように切り替える方法はわかるのですが、複数を一括して扱いたいので 同じclassのまま書きかえる方法を教えてください。
215 :
195 :01/08/30 13:44 ID:fnpZoJok
>>207 房総族さん、こちらでも確認しました。
大変助かりました。ありがとうございます。
>>209 同一ページに於ける複数画像の切り替えは問題ないけど、
「←」と「→」、二個しか使えないって点で挫折しました。
<div id="?"></div>のブロックで括れば何とかなるけど、スクリプト的にウザすぎます。
厨房でスイマセン。
217 :
ワショーイ :01/08/30 16:25 ID:.5VfAbqo
>>214 <head>
<script language="javascript">
function change_style(_selector, _style) {
if (document.all) {
document.styleSheets[0].addRule(_selector, _style, 0);
}
else if (document.getElementById) {
document.styleSheets[0].insertRule(_selector + "{" + _style + ";}", 0);
}
}
</script>
218 :
ワショーイ :01/08/30 16:29 ID:.5VfAbqo
追加 <style type="text/css"> .class1 {color:blue;} </style> </head> <body> <div class="class1">文章</div> <div>文章</div> <div class="class1">文章 </div> <a href="javascript:change_style('.class1','color:red')">change style</a> </body>
追加2 上のソースでいけると思います。ただしNN4.x未対応、Mozilla0.9.3 for Macでは強制終了してしまいますが。もっといい方法もあるかもしれませんが、とりあえず。
220 :
りひぴし :01/08/30 17:55 ID:2CEx/UhQ
>>217 ワショーイさん
ありがとうございます!
ですがIE5.0では変わりませんでした。ワショーイさんはどのバージョンで確認されました?
221 :
ワショーイ :01/08/30 18:41 ID:dXvP0lNU
すべてMacですが
IE5.0
NN6.0
NN6.1
で確認しました。
>>217 のソースを
if (document.all) {
document.styleSheets[0].addRule(_selector, _style);
}で試すとうまくいくかもしれません。
.class1 {color:blue;}を削除するソースを追加しますので
もうちょっとまっててください。
222 :
りひぴし :01/08/30 18:49 ID:2CEx/UhQ
>>221 >
>>217 のソースを
>if (document.all) {
>document.styleSheets[0].addRule(_selector, _style);
>}で試すとうまくいくかもしれません。
その方法でできました!
削除するソースのほうも面倒でなければお願いします。
223 :
210 :01/08/30 20:50 ID:P5MKMXzE
>>213 僕には全然考えつきませんでした。
「なるほど!」って感じです。いい勉強をさせてもらいました。
考え方は分かったので、あとはより完璧な変換プログラムを目指して
ソースを組んでみます。
…余談ですが、僕が関数名で使ってた「Transport」って「輸送」ですよね。
「変換」なら「Transfer」なのに…
鬱だ…
224 :
房総族 :01/08/30 21:03 ID:ymCKzf1.
>>209 <HTML><HEAD><TITLE>イメージビュアーっぽい?</TITLE></HEAD><BODY>
<table><tr><td><img src="opening.gif" id="img1"></td>
<td id="t1">←,→を押してね</td></tr></table>
<form><input type="button" value="←" onClick="change('p')">
<input type="button" value="→" onClick="change('n')"></form></BODY>
<script type="text/javascript">
var d = document.getElementById("t1");
var s = new Array(
["a.gif","まじか〜<br>くそー"],
["b.gif","うひゃー"],
["c.gif","どひゃー"],
["d.gif","ぐはー"],
["e.gif","どば〜"]);
var count = s.length;
function change(f){
if(f=="n"){if(++count>=s.length)count=0;}
else{if(--count<0)count = s.length-1;}
document.images["img1"].src = s[count][0];
d.innerHTML = s[count][1];
}</script></HTML>
225 :
Name_Not_Found :01/08/30 23:00 ID:S.oE/S8M
この↓ソースを自分のHPで使いたいのですけど どうにもわからないことがあるので教えてください。 <script language="JavaScript"> <!-- function mk_array(){ var leng = mk_array.arguments.length; for(i = 0; i < leng; i++){ this[i] = mk_array.arguments[i]; } } var PU = 0; var PL = 1; var url_list = new Array(); url_list[0] = new Array(); //初期 url_list[1] = new Array(); //1ページ目 url_list[2] = new Array(); //2ページ目 url_list[0][PU] = "sp42_00.html"; //初期右上 url_list[0][PL] = "sp42_01.html"; //初期右下 url_list[1][PU] = "sp42_10.html"; //1ページ目右上 url_list[1][PL] = "sp42_11.html"; //1ページ目右下 url_list[2][PU] = "sp42_20.html"; //2ページ目右上 url_list[2][PL] = "sp42_21.html"; //2ページ目右下 function Jump_anchor(){ var url_slct = document.Jump.list_title.selectedIndex; if(url_list[url_slct][PU] != ""){ window.open(url_list[url_slct][PU],'right0'); //'right-u'は右上フレーム名 window.open(url_list[url_slct][PL],'right1'); //'right-l'は右下フレーム名 } } // --> </script> これなんですが url_list[2]の数字のところって上限があるんですか? セレクトフォームの項目が10以上になってしまって、 書換えていったのですけど10個めの項目を増やして IEで確認したとたんおかしくなってしまいました・・・。 9個めまでは巧く行ってたんです〜。 又、このScriptで別ウインドウでリンク先を開くと いうようなことは出来ますか? タグで言うと<A HREF="URL" TARGET="_blank">←これなんですが わけわかんない聞き方でスイマセン! JavaScriptに関する知識が全然無いのでどうすればいいのか わからないんです・。(コピぺしてファイル名書換えたりしか出来ません;;)
226 :
225 :01/08/30 23:03 ID:S.oE/S8M
あぁ・省略されてしまった・・スイマセン! ・・・鬱だ。
227 :
Name_Not_Found :01/08/30 23:09 ID:RO0TSzoM
画面をスクロールしても常にメニューがついてくるやり方を教えて下さい。 <STYLE type="text/css"> <!-- #menu {position:absolute; visibility:hidden;} #menu { border:solid silver 2px; padding:4px; width:150px; font-size:10px; } --> </STYLE> このようにCSSと組み合わせて適すとのリンクを表示させるやり方は分かるのですが...。 テキストでなく、画像をリンクに用いる場合はどのようにしたら良いのでしょうか。 どなたか知恵を貸して下さいませ。
228 :
209 :01/08/31 02:27 ID:jVSs5KE6
>>216 さん
ありがとうございました。
あんな、??な説明でもちゃんと考えてみてくださる方がいてくださる
のは本当にウレシイです。
>>224 さん
ありがとうございました!
「まさしくコレだ!」・・・感動しました。
いただいたscriptを自分でちゃんとわかって使えるよう、これから
がんばります!
本当にありがとうございました。
229 :
泉 :01/08/31 07:39 ID:XzxrSr5g
初めまして〜!泉と言います。 JAVAスクリプトで、リンクをクリックしたら サイズ指定で別ウインドウが開くようにするJAVAスクリプトを教えてください。。。 HPの完成にそれがどうしても必要なんです^^; グーグルとかヤフーとかかなり探しましたが在りませんでしたので、 最後の手段でここの皆様方に頼ります。 宜しくお願いしますm(_ _)m
230 :
:01/08/31 08:02 ID:dUhT6AOQ
231 :
213 :01/08/31 08:18 ID:wrZpWbfA
訂正。 [a-zA-Z1-6]+じゃなくて[a-zA-Z1-6]*じゃないと1文字の要素に対応しない。
232 :
名無しさん :01/08/31 10:46 ID:b0C9Ls1.
質問させてください フレームを使ったページで、上と下に分けています 上の部分に、セレクトボックスを付けて選択すると 下のフレームに表示させたいのですが、どうもうまく行きません。JavaScriptを使っているのですが ボックスから選択すると「エラー オブジェクトは 宣言されていません」みたいな表示がされ、下フレームはなにも変わりません。 <SCRIPT LANGUAGE="JavaScript"> <!--function jump(sel) { if (sel.options[sel.selectedIndex].value) { top.mein.location.href = sel.options[sel.selectedIndex].value; } } // --> </SCRIPT> <FORM> <SELECT onChange="jump(this)"> <OPTION VALUE="">■■ 選んでね ■■ <OPTION VALUE="/ab.htm">hoge <OPTION VALUE="./b/b/html.htm">hogehoge </SELECT> </FORM> 上記のようなScriptを書いているのですが、なぜでしょうか 表示させたいフレーム名は「mein」です どなたかご伝授をお願いいたします
233 :
232 :01/08/31 10:48 ID:b0C9Ls1.
間違えました 上の<OPTION VALUE="./b/b/html.htm">は ./b/b.htmです
>>229 <html>
<head>
<script type="text/javascript">
<!--
function hiraku(){
window.open("
http://www.yahoo.co.jp/ ","","width=200,height=200");
}
//-->
</script>
</head>
<body>
<a href="javascript:hiraku()">やふ</a>
過去ログにありそうなんですけど・・・
235 :
sage :01/08/31 11:54 ID:zE0Jb.ws
>>232 「<!--」の後は改行した方がいいんじゃないすか。ちなみに、
私の持っている本には「スクリプトを<!-- ... -->で囲まない
方がよい」と書いてありますが。なので私も囲んでいません。
>>227 うーん?別にメニューのリンクを<a href="..."><img src="..."></a>
のように画像にするだけじゃ駄目なの?
>>232 「index.html」
<html>
<frameset rows="100,*">
<frame src="giko.html" name="giko">
<frame src="mein.html" name="mein">
</frameset>
</html>
「giko.html」
<html>
<head>
<script type="text/javascript">
<!--
function jump(sel){
if(sel.monamenu.selectedIndex==1){
parent.mein.location.href="ab.html";
}
if(sel.monamenu.selectedIndex==2){
parent.mein.location.href="b.html";
}
}
//-->
</script>
</head>
<body>
<form>
<select name="monamenu" onChange="jump(this.form)">
<option>■■選んでね■■
<option>hoge
<option>hogegoge
</select>
</form>
これは?
>>209 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var pos = 0, imgs = ['img1.png', 'img2.png', ...];
function step(n) {
pos += n; if(pos < 0) pos = 0; if(pos >= imgs.length) pos = imgs.length-1;
document.images[0].src = imgs[pos];
}
</script>
</head><body>
<p><a href="javascript: step(1)">next</a>|
<a href="javascript: step(-1)">prev</a></p>
<p><img alt="viewer" id="i1" src="img1.png"></p>
</body></html>
>>208 えー、N6/Mozillaに内蔵されているJavaScript 1.5にはその機能が
あるようですね。私の持っている本によると
picture1.left setter = function(pos) { posに移動させる操作 }
なんていう風に書けるそうです。しかし思いっきり非標準なのでやめ
といた方が無難かも。ちょっとタイムラグがあってもよければ、全て
のpictureXオブジェクトについて定期的にleftが変更されたかどうか
調べて変更されていたら絵を移動するとか。しかし無理矢理だな。
>>238 うーん。もう回答例が出ていた。欝だ飯に行こう。
241 :
Name_Not_Found :01/08/31 12:58 ID:ujrqIPIc
いや、
>>238 も簡潔でいいと思いますよ。
しかし、稼動しません、、、、
>>241 うーん。どの環境で稼働しないのか教えていただけます?
こっちはMozilla0.93/Unix、Netscape 4.78/Unix、MSIE5.5/
WindowsNT4.0でテストしてみたのですが…
243 :
Name_Not_Found :01/08/31 13:42 ID:ujrqIPIc
マクIE5.0デシタ、、、、 逝ってよし!>俺
>>243 いやいや! Mac IEだってブラウザです。が、テスト環境
がなくて試せない…
245 :
243 :01/08/31 14:12 ID:ujrqIPIc
つか、ひとつのボタンで動作が変わるのがスゴイと思うんすわ。 例えばコレって、フレームで割って、1回押したらgoogle、2回目はgoo、3回目はexcite って具合に別ページに順次表示可能でしょ? 俺、こーゆーことする場合、理屈が分からんからボタン3つ作りますから・・・(鬱
>>245 ボタンのついたフレームが出っぱなしなら、
var count = 0;
function press() {
if(++count >= max) count = 0;
if(count == 0) { 1回目の動作 }
else if(count == 1) { 2回目の動作 }
...
}
つーのと同じことでしょ? フレームが出っぱなしでないと、どっかに
countを覚えさすワザが必要になりますけどね。
247 :
Name_Not_Found :01/08/31 17:56 ID:ZVheGemw
ぐわ、JavaScript用の質問スレがあったのか… 質問スレとマルチポストになりますが、こっちのも書かせて下さい。 JavaScriptな質問なんですけど、 オンマウスで、その画像が変わるのはわかりますが、 その他の部分も一緒に変える事はできるんでしょうか? たとえばテレビみたいな画像がありまして、 スイッチの部分にオンマウスで、スイッチ部分の画像が へっこんだものに変わり、それに同期して画面部分の 画像も変わるっていうのがやりたいんです。 スイッチが1つなら別にまとめて1つの画像で作れば いいんですが、スイッチが複数あるもので…。 技術的に可能な事なのかな、と思いまして。 がいしゅつらしいのですが…
>>247 そりゃあガイシュツというより、onmouseoverハンドラで
関数呼ぶようにしといて、その関数の中で画像の差し替え
を好きなだけ沢山やればいいんじゃないですか?
251 :
ワショーイ :01/08/31 19:03 ID:yr0d80gQ
追記 Mozilla 0.9.3 for Macで上のページに貼ってあるリンクをクリックするのは やめてね。強制的に終了してしまうので。(Winでも同様かも。)
253 :
Name_Not_Found :01/08/31 20:37 ID:WYd2efP6
サウンドを使ったゲームを作りたいんですけど、いい見本ありませんか?
>>253 任意のサウンドを出すのはvol.3にあったね。ゲームは
なかったと思う…
>>252 なんで死ぬんでしょうね?とりあえず、私も作ってみました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
.class1 { color: blue }
</style>
<script type="text/javascript">
function chg(s) {
if(document.all) {
document.styleSheets[0].cssText = s;
} else if(document.getElementById) {
document.styleSheets[0].deleteRule(0);
document.styleSheets[0].insertRule(s, 0);
}
}
</script>
</head><body>
<h1 class="class1">Test...</h1>
<p><a href="javascript: chg('.class1 { color: green }')">green</a>|
<a href="javascript: chg('.class1 { color: blue }')">blue</a>|
<a href="javascript: chg('.class1 { color: red }')">red</a></p>
</body></html>
256 :
ワショーイ :01/08/31 23:30 ID:nc9DvGjs
Mozilla0.9.3ではinsertCSS()を実行すると落ちるようですね。 (NN6.1までは大丈夫のようですが。) Win版Mozilla0.9.3ではどうでしょうか。 なお、上のソースに関してですが MacIE5.0ではcssTextは読み出しのみのようです。 cssTextでシートの値は返りますが代入はできませんでした。 参考になれば嬉しいのですが。
257 :
208 :01/09/01 01:17 ID:i5wnvv5U
>>239 うーんやっぱり難しいんですかね。
ちょっとかっこいい気がしてやりたかったんですが。
258 :
泉☆ gifu-ppp-210-172-170-69.interq.or.jp☆(@@)☆ ◆XYOwaIng :01/09/01 04:08 ID:fOTlmygM
259 :
名無しさん@お腹いっぱい :01/09/01 04:46 ID:YTxSMjuE
>258 なんですかアナタは 頭おかしくなったですか?心配です( ̄ー ̄)ニャリ
260 :
Name_Not_Found :01/09/01 05:24 ID:39vJvT1U
オブジェクトのインスタンスの側で、 自分自身が何個目のインスタンスなのか、 を判断する方法はあるでしょうか?
261 :
:01/09/01 05:55 ID:4wuZtQn.
>>260 その「インスタンス」の範囲は…?たとえばJavaみたいなクラス
方式の言語だと、すべてのオブジェクトは「どのクラスに所属」
ということがはっきりしてるので何個目というのも(数え方はとも
かく)定義としては明確です。
でもJavaScriptはクラスがないプロトタイプ方式の言語なので、
何を基準に「何個目」を数えるかが明確でないですよね。たとえば
... new MyObject(...) ...
によって作られるオブジェクトの何個目、ということだったら、その
コンストラクタの中で
function MyObject(...) {
this.count = MyObject.prototype.count++;
その他の初期設定
}
なんていうふうにしてそのオブジェクトの適当なプロパティ(上の
例ではcount)に何番目かを保持するんじゃないでしょうか。
263 :
Name_Not_Found :01/09/01 06:27 ID:2qBeeYW2
>>260 function theObj() {
this.num = 0;
this.num++;
}
これでいけるんじゃない?
>>262 うげげ、カウントアップを後置の++でやったらダメじゃん。
前置の++に直して使ってね。
266 :
263 :01/09/01 06:40 ID:grc61W6c
間違えた、スマソ var count = 0; function theObj() { this.num = count++; }
267 :
260 :01/09/01 06:49 ID:bUBjhUV2
>>262 さんの解釈のとおり、newで作られるオブジェクトの何個目か、
というつもりでした。
prototypeの意味がわからないまま、
上のリストを実行してみたら、countがNaNでした。
まず最初にコンストラクタの外で、MyObject.prototype.countに
0を設定しなくてはいけないのでしょうか?
あとクラスとプロトタイプの違いが良くわかりません。
どういう違いがあるのでしょう?
>>267 MyObject.prototype.countを0に初期化した方がよかった
ですね、スマソ。
プロトタイプの特徴はいろいろあるのですが、たとえば後から
メソッドを増やすことができます。
var o = new MyObject(...);
...
MyObject.prototype.aMethod = function(...) { ... };
...
o.aMethod(...);
このように、オブジェクトoを作った後ででもMyObject.prototype
に新しいプロパティを定義してそこに関数を入れると、それがoのメソッド
として使えますね。プロトタイプの方が動的だっていう感じ。
NN6とNC4.75?(最新ver知りません)って動作違うの? 何で2つもブラウザ出してんの?
270 :
Name_Not_Found :01/09/01 11:16 ID:3jbWGW6o
>>269 エンジンが別物なので別のブラウザー。
NN6でスクリプト組むときに便利な情報が
あるサイトってありませんか、たいていのサイトはIEと4.5で
動くというのはあっても6対応というのが少なくて、
ieと6両対応で4.5を辞めた方が作りやすそうなんで。
271 :
ie_user :01/09/01 11:28 ID:IpV7r.oI
272 :
泉 :01/09/01 19:14 ID:yn6Knm/g
258の泉です〜、、、
<html>
<head>
<script type="text/javascript">
<!--
function hiraku(){
window.open("
http://www.yahoo.co.jp/ ","","width=200,height=200");
}
//-->
</script>
</head>
<body>
<a href="javascript:hiraku()">やふ</a>
のスクリプトはありがたいのですが、これに加えて
開いたウインドウのサイズが変更できるものは無いでしょうか??
本当に必要なんです、、、
お手数ですが、宜しくお願いします、、、m(_ _)m
273 :
h++ :01/09/01 21:39 ID:b4pOgnnQ
<html> <head> <script type="text/javascript"> <!-- function henkou(){ window.resizeTo(400,400); } //--> </script> </head> <body> <form> <input type="button" value="400*400" onClick="henkou()"> </form> </body> </html> fusianasanとか個人キャップとか意味不明なリンクとか貼らんでいいぞ
275 :
Name_Not_Found :01/09/01 22:04 ID:IOuBgNlA
質問させて下さい。 ボタンが複数あります。 そのボタンをonClickで画像Aを切り替え、 さらにその切り替えた画像AをonClickで小窓をだして 画像Bを表示させたいのですが ボタンによって表示させる画像が違うため 表示させている画像の情報をひろって、 それに応じた画像をwondow.openした小窓に表示させたいのです。 画像の情報をひろってそれに応じた画像を表示させるのが どうしてもわからないのですが...... どなたかお教え下さいませんでしょうか? よろしくお願いいたします。
<html> <head> <script type="text/javascript"> <!-- var count=0; function giko(){ count++; if(count==1){ document.neko.src="A.gif"; }else if(count==2){ count=0; window.open("imageB.html","","");//←このhtmlファイルに画像Bを貼る。window.openは既述。 } } //--> </script> </head> <body> <form> <input type="button" value="画像A" onClick="giko()"> </form> <img src="dummy.gif" name="neko"> </body> </html> 独断で解釈して作ってみた。 >そのボタンをonClickで画像Aを切り替え そのボタンをonClickで画像A『に』じゃねぇの? ヨクワカンナイヤ.....
とりあえずソース貼ってくれよ・・・
278 :
izumi :01/09/01 22:58 ID:3KYMc0Gk
>>274 おお、どうもありがとうございました〜!!!
流石ですね、、、(;ー;
善良なプロフェッショナル様万歳age!!
280 :
泉☆ gifu-ppp-210-172-170-101.interq.or.jp☆(@@)☆ ◆XYOwaIng :01/09/01 23:06 ID:3KYMc0Gk
281 :
泉☆ gifu-ppp-210-172-170-101.interq.or.jp☆(@@)☆ ◆XYOwaIng :01/09/01 23:07 ID:3KYMc0Gk
>>279 さん
絶対そんなこと無いです!!
滅茶苦茶感謝してますよ!!!
282 :
泉 :01/09/01 23:19 ID:3KYMc0Gk
ごめんなさい、名前戻しました(;ー;
どうしたいねん? どの窓のサイズ変えたいねん? ↓親window↓ <html> <head> <script type="text/javascript"> <!-- function hiraku(){ window.open("大いに逝ってよし!.html","","width=200,height=200"); } //--> </script> </head> <body> <a href="javascript:hiraku()">大いに逝ってよし!</a> </body> </html> ↓大いに逝ってよし!.html(子window)↓ <html> <head> <script type="text/javascript"> <!-- function henkou(){ window.resizeTo(400,400); } //--> </script> </head> <body> <form> <input type="button" value="400*400" onClick="henkou()"> </form> </body> </html> 日本語を正しく書け!>泉 俺もな!
余談だが、画像見せられても全く分からん。 ナニゲに串抜いてそうでイヤ(;´Д`)
285 :
267 :01/09/02 00:42 ID:qvQsE.Do
>>268 ありがとうございました。
メンバの追加が可能なんですね。
クラスが、インスタンスをコピーとして作るのに対して、
プロトタイプは、インスタンスをエイリアスとして作る、みたいな
感じなのかな、内部的に…
JavaScriptをOFFにする方法ってありますか? うちのページがポップアップ広告なんで、 「入る前にこのボタンを押してJavaScriptを切ってね」みたいなことが出来ると 嬉しいんですけど。
287 :
◆O.H2wID. :01/09/02 03:01 ID:.lV.vVOI
<body onload="for(;;){alert('(´д`;)(´д`;)( ´_ゝ`)');}">
288 :
:01/09/02 03:22 ID:leqtUmJY
ページをロードしたときに、2枚の画像がぱたぱたと何度か入れ替わって表示された後、 ランダムに片方の画像で停止する、というのをやりたいのですが、どうしたらいいでしょう。 画像をランダムに表示、というサンプルも、一定時間ごとに画像を入れ替える、というサンプルも いろいろ見つけたのですが、どう組み合わせて良いかさっぱり分からないのです。
289 :
Name_Not_Found :01/09/02 09:12 ID:11JZmRgk
個々の手法が分かるならそんなに悩むことではないはずなんだが 仮に表示回数をnに1/2の確率で+1する for(i=0,i<n,i++) for(i=n,i>0,i--) で回す その中でi%2の結果によって2枚の画像を切り替える そうすればどちらかが表示されて終わる あんましうまい方法じゃないな
ちょ〜っと長いよぉ… <html><head><script type="text/javascript"> <!-- var _1=0; var _2=0; var _3=Math.floor(Math.random()*2); var gazou=new Array("0.gif","1.gif"); function patapata(){ if(_1<10){ _1++; if(_2<=gazou.length){ document.index_0.src=gazou[_2]; _2++; if(_2==gazou.length){ _2=0; } setTimeout("patapata()",100); } }else{ document.index_0.src=_3+".gif"; } } //--> </script></head><body onLoad="patapata()"><img src="0.gif" name="index_0"></body></html>
291 :
275 :01/09/02 09:30 ID:4/JOxS1k
>>276 ありがとうございます!!
>そのボタンをonClickで画像A『に』じゃねぇの?
説明が悪くて申し訳ございません。
「を」なんです。
ボタンとは別の画像をかしゃかしゃ切り替えたくて....
ソースなんですが、
「画像の情報をひろってそれに応じた画像を表示させる」
部分がさっぱりわからず書けないんです..。(情けない...)
教えてばかりですみません。よろしくお願いいたします。
>>291 >ボタンが複数あります。
<input type="button">が沢山あるの?
>そのボタンをonClickで画像Aを切り替え、
<input type="button">を押したら、既に表示されてる「画像A」を違う画像(画像B)にするってこと?
マッタクワカラン
>画像の情報をひろってそれに応じた画像を表示させるのが
>どうしてもわからないのですが......
画像の情報を取得するのはdocument.images[添番]とかdocument.nameとか・・・
だからソース貼ってくれって・・・html部分でいいから
html部分じゃなくてhtmlのbody部。 スマソ
294 :
288 :01/09/02 12:01 ID:6Lntlj.g
>289 すみません、全然意味がが解りませんでした… >290 ありがとうございます。まさに、希望していたとおりのパタパタ具合でした。
295 :
295 :01/09/02 20:12 ID:ssZ1FPTQ
296 :
Name_Not_Found :01/09/02 20:58 ID:x4UwHXx.
297 :
Name_Not_Found :01/09/03 01:15 ID:Q1y1V5i6
298 :
Name_Not_Found :01/09/03 06:52 ID:KrZ2l7D.
>>297 そのサイトMozillaで見たけどクリックしても何も出ないなあ。
画像を画面上にいくつも出現させたり好きなように動かしたり
消したりするのって別に難しくはないでしょ。どっかで配って
いるかっていうのは分らないけど「動き方」を説明してもらえれば
作るのはすぐだと思いますよ。クリックした点から花の画像が複数
(何個くらい?)、放射状にとび出て放物線を描いて画面の下に落ちて
いけばよいの?
299 :
297ではありませんが・・・ :01/09/03 09:41 ID:5ziWtYoU
300 :
Name_Not_Found :01/09/03 11:40 ID:KrZ2l7D.
>>297 ,
>>299 IEで見てみました。うーん、どういう動かし方なのかな? まあ、適当に
「放物線を描いて落ちる」ように作ってみました。まるで花火みたいだが。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
#i1 { position: absolute; visibility: hidden }
</style>
<script type="text/javascript">
var c, b, e, a = new Array();
function FlyImg(x, y, vx, vy) {
this.x = x; this.y = y; this.vx = vx; this.vy = vy; this.count = 25;
this.node = e.cloneNode(true); b.appendChild(this.node);
this.node.style.left = this.x + 'px'; this.node.style.top = this.y + 'px';
this.node.style.visibility = 'visible';
}
FlyImg.prototype.step = function(dt) {
if(--this.count > 0) {
this.vy += 10; this.x += this.vx * dt; this.y += this.vy * dt;
this.node.style.left = this.x + 'px'; this.node.style.top = this.y + 'px';
return true;
}
if(this.node != null) { b.removeChild(this.node); this.node = null; }
return false;
}
function click(x, y) {
for(var i = 0; i < 20; ++i) {
var vx = 80*(Math.random()-0.5), vy = 80*(Math.random()-0.5);
a.push(new FlyImg(x - 16 + vx, y - 16 + vy, vx, vy));
}
setTimeout(step, 50);
}
function step() {
var live = 0;
for(var i = 0; i < a.length; ++i) if(a[i].step(0.2)) ++live;
if(live > 0) setTimeout(step, 50); else a.length = 0;
}
function h1(e) { click(e.clientX, e.clientY); }
function h2() { click(window.event.clientX, window.event.clientY); }
function init() {
b = document.getElementById('b1'); e = document.getElementById('i1');
if(window.addEventListener)
window.addEventListener('click', h1, true);
else
document.onclick = h2;
}
</script>
</head><body id="b1" onload="init()">
<h1>Test...</h1>
<div id="i1"><img src="flower.png" alt="flower"></div>
</body></html>
カリスマさん帰ってきたんですね!
ある一つのアドレスをクリックすると、 windowがたくさん開くようなjavaって、出来るんでしょうか? それぞれのwindowには、指定した別のページが開くようにしたいのですが。
304 :
Name_Not_Found :01/09/03 20:38 ID:KrZ2l7D.
>>301 そりゃさすがに9月だもん、帰ってこないとおまんまの食い上げ…
しかし2ちゃんねるが淋しくなっていてビックリ!!!
>>302 そのアドレスを<a href="javascript: xxx()">...</a>
とかにしておいて、別途
function xxx() {
window.open("uriその1");
window.open("uriその2");
...
}
なんてすればいいんじゃないですか? ただし、その
リンクはJavaScript offだとたどれないよ、という
注意書きを入れましょうね。
305 :
297 :01/09/04 02:37 ID:g4HPf5hI
>>300 どうもありがとうございます。すごい長いですね。やっぱりこんだけ書かないと
だめですか・・・。お手数おかけしてスミマセンでした。
>>303 ありがとうございます。ソースにあった英語サイトには行ってみたんですが
なにがなにやら分かりませんでした。ご親切にありがとうございました。
早速試してみます。
306 :
Name_Not_Found :01/09/04 02:53 ID:g4HPf5hI
「お気に入り」に登録するとちっちゃいマークがつくヤツって IE5以上ですよね? うちIE4なんですが見えるってことは IE4でも大丈夫ってことですかね? ちなみに既出かもしれませんが、このマークをつける方法って どうやるんですか?長いスクリプトが必要でしょうか?
307 :
Name_Not_Found :01/09/04 07:12 ID:37ePOyus
>>305 長いですかね。全部自前で動かすんだからこれくらいで普通だと思うな。
ソース読む気がないんならコピペ向きに公開されてるのを使うのがいい
でしょうね。ソース読んで自分で好きなように直せるようになってこそ
楽しいと思うんだけどな…まあ趣味の問題といえばそうですが。
308 :
Name_Not_Found :01/09/04 09:26 ID:PsWhI1Xw
309 :
Name_Not_Found :01/09/04 15:21 ID:AZEo6FpU
BLINKタグが効かないIE用に JavaScriptで点滅させるようなスクリプトを組んでいたのですが、 NetScape6.1ではBLINKも IE用のJavaScript点滅スクリプトも効きません。 何かいい方法はありませんか? 今まで使っていたスクリプトは以下の通りです。 <CENTER><blink id=bli2><FONT SIZE="4" COLOR="RED"><B>Error</B></FONT></blink></CENTER></TD> <SCRIPT LANGUAGE="JavaScript"> if(document.all){ setInterval('bli2.style.visibility=bli2.style.visibility=="visible"?"hidden":"visible"',1000); } // --> </SCRIPT>
>>309 obj = 0;
if(document.all) obj = document.all("bli2");
else if(document.getElementById) obj = document.getElementById("bli2");
if(obj)
setInterval('obj.style.visibility=obj.style.visibility=="visible"?"hidden":"visible"',1000);
311 :
309 :01/09/04 16:11 ID:AZEo6FpU
>>310 ありがとうございます。動作しました。
document.getElementByIdてのが効いてるんですね。
自分で調べに逝ってきます。
312 :
Name_Not_Found :01/09/04 16:11 ID:37ePOyus
>>309 まず、blinkさせるのは一般的にはうるさくて嫌われますよね。
それはそれとして、そのスクリプトだとdocument.allでテスト
してるからIEのみはねてます。次に、idがそのまま変数名に
なるというのも互換性がないので、document.getElementById()
を使った方がいいです。で、N4/N6/Mozilla/IE5.5対応で点滅
ついでにちょっとだけ動かすなんていうふうにしてみました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
div { position: relative }
</style>
<script type="text/javascript">
var a = ['x1', 'x2'], count = 0, suf = 'px';
if(!document.getElementById) {
document.getElementById =
function(id) { var e = document[id]; e.style = e; return e; }
suf = '';
}
function myblink() {
++count;
for(var i = 0; i < a.length; ++i) {
var e = document.getElementById(a[i]);
e.style.visibility = (count%2 == 0) ? 'visible' : 'hidden';
e.style.top = (count%13) + suf; e.style.left = (count%17) + suf;
}
}
</script>
</head><body onload="setInterval(myblink, 1000)">
<div id="x1"><h1>Test...</h1></div>
<div id="x2"><h1>Test 2...</h1></div>
</body></html>
313 :
309 :01/09/04 16:17 ID:AZEo6FpU
>>312 おっとすいません。
ソースはゆっくり見させて頂くとして
(興味深いですから。。。)ひとまずお礼を。
>IEのみはねてます
元々この上の方にブラウザ分岐がありました。。。
ネスケはBLINK効くものと思って
BLINKタグかませるように分岐してたのです。
ともかくdocument.getElementByIdを知らんというのが
敗因ですね。調べに逝ってきますです。
ありがとうございます。
314 :
Name_Not_Found :01/09/04 17:12 ID:pj06RHAs
教えて下さい。 プルダウンメニューで選択した条件に合うデータを一覧表示するデータベースが欲しいんです。 プルダウンメニューは複数ですが、検索条件は一つ。、例えば「業種別」「都道府県」「商品別」といった中から一つを選びたいんです。 「業種別」−「運輸業」で該当データの一覧を表示させるといった感じです。 元のデータは今はAccessに入れてますが、txtでもいいです。 もしどこかにソースがあったら、是非教えて下さい。 散々探したのですが、見つかりません・・・ よろしくお願いします。
315 :
Name_Not_Found :01/09/04 17:27 ID:37ePOyus
>>314 あのねえ、データベースはサーバ側に持つものなんだから
WebProg板で聞いた方がいいよ。それともデータ全部ページ
と一緒に送っちゃうの?それとも「業種別」「都道府県」
といったメニューを選択したとたんにその項目での検索が
サーバに送られるようなJavaScriptを組みたいってこと?
そういうことならここでの話題だけどー。
317 :
Name_Not_Found :01/09/05 00:02 ID:O2PC6SXA
JavaScriptを使って、フォームで収集するデータを、 テキストとかに送るようにできますか? サーバー環境はWIN NTなんですが。 ちなみに使っているソフトはDreamweaverです。
318 :
:01/09/05 00:04 ID:MnQedGYQ
基本的な質問ですいません。 <script language="javascript">と書いてるのですが、このスレでは <script type="text/javascript">となっています。 どう違うのですか?またどっちの方がよいのですか? もうひとつ var a=document.....というので、varを省略しても動くのですが varってどういう意味ですか?
>>318 <script〜>はvol.3でガイシュツ。
var って変数の宣言でしょが。宣言しないでいきなり使っても
勝手に宣言されるからだいじょぶ(の時もある)
320 :
:01/09/05 00:57 ID:x5kUH5bI
>>318 var を使うと、プログラマな人にはソースが見やすくなる。
それだけかな?
321 :
variable :01/09/05 01:51 ID:q5Tpb5Ic
varを省略したときは常にグローバル変数になり、 関数内でvarを宣言したときはローカル変数になる。 はず できるだけ入力を少なくしたいというのなら省略すれば良し ちゃんと変数を管理してる気分になりたいなら常にvarをつけるようにすればいい
322 :
Name_Not_Found :01/09/05 07:09 ID:bWsILyiw
>>321 説明はいいけどその最後の2行はちょっとね…次の例を見てみ。
funciton f1() {
for(i = 0; i < 10; ++i) f2();
}
function f2() {
for(i = 1; i <= 10; ++i)
document.writeln('<td>' + i + '<\/td>');
}
変数iにvarがついてないと広域変数になるので、f2()の中でf1()の
ループカウンタの値を壊してしまうため、この例は意図した通りに動か
ないわけね。だから「varは常につけるのが吉」だと思うがいかが?
>>318 <script language="...">...</script>はHTML 4.01の標準
には含まれていない。<script type="MIMEタイプ">...</script>
は含まれている。だから自分ではtypeだけ使っている。
ただ、languageを使うとJavaScirpt1.2とかJavaScript1.1とか
指定してバージョンを使い分けるという機能がある。しかしそんなこと
やってる人ほとんどいないよねえ。
323 :
Name_Not_Found :01/09/05 07:22 ID:bWsILyiw
>>317 テキストに送るって何よ。サーバに送るってこと?
CGIに渡すのは別に問題ないんだけど、そのサーバが
どういうふうにデータを受け取っているのか分らない
と書けないよ。
324 :
314 :01/09/05 10:28 ID:ixFa80fM
会社がイントラ入れてくれないので、データベースごと配ってローカルで使うしかないんです。 なので、CGIは使えません。サーバもありません。 私もこんなことになるとは思わなかったんですが・・・ JavaScriptじゃできないんでしょうか・・・?
325 :
名無しさん┃】【┃Dolby :01/09/05 11:53 ID:6VLi7O76
.jsファイルをキャッシュに保存できないようにする方法というのは あるのでしょうか?
326 :
Name_Not_Found :01/09/05 11:58 ID:bWsILyiw
>>324 ほうほう、そういう話だったのですね。もちろんできますとも。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var db = new Array();
db.push(['東京都', 'JR', '山手線']);
db.push(['東京都', '私鉄', '小田急線']);
db.push(['大阪府', '私鉄', '阪神本線']);
db.push(['大阪府', '公営', '御堂筋線']);
db.push(['福岡県', '公営', '地下鉄1号線']);
db.push(['福岡県', 'JR', '篠栗線']);
function show(n) {
var sel = document.forms[0].elements[n];
var key = sel.options[sel.selectedIndex].text;
var area = document.forms[0].elements[2]; area.value = '';
for(var i = 0; i < db.length; ++i)
if(db[i][n] == key) area.value += db[i].toString() + '\n';
}
</script>
</head><body>
<form action="#"><p>
<select onchange="show(0)">
<option>東京都</option><option>大阪府</option><option>福岡県</option>
</select>
<select onchange="show(1)">
<option>JR</option><option>私鉄</option><option>公営</option>
</select>
<br><textarea rows="10" cols="40"></textarea></p></form>
</body></html>
327 :
Name_Not_Found :01/09/05 13:49 ID:8KZKBx8I
何かキーを押すとalertが出るようにすることはできますか? 具体的には、プリントスクリーンをされた時にalertを出したいのですが。。。
328 :
Name_Not_Found :01/09/05 14:45 ID:bWsILyiw
>>327 <html><head><title>???</title>
<script type="text/javascript">
var pane, img, xpos = 0, ypos = 0, imgs = new Array(4);
function init() {
if(window.captureEvents) { // NS
window.captureEvents(Event.KEYDOWN);
window.onkeydown = function(e) { window.alert('???'); };
} else { // IE
document.onkeydown = function() { window.alert('???'); };
}
}
</script>
</head><body onload="init()">
<h1>test...</h1>
</body></html>
ブラウザ/環境によっては(Unix上のN4が有名)キーイベント取れない
ので注意してね。
>>328 うげげ、ゴミが残っていて貼り付けも失敗している。すいません。
この例題の場合、変数宣言は要りませんね。
item() これはどうやって使うものなんですか?
331 :
327 :01/09/05 15:17 ID:DRpDQjgs
328(329)さん、早速ありがとうございます。 試してみたのですが、プリントスクリーン以外のキー操作ならalertが 出ますが、目的である「Fn+Ins(PrtSc)」だとalertが出ません。 もしかして、不可能なのでしょうか?
>>331 うーん、プリントスクリーンだとブラウザが受け取って
動作するんじゃなくブラウザに渡る前にOSが処理してしま
うんじゃないかな。だとすればJavaScriptでは無理ですね。
残念でした。
333 :
Name_Not_Found :01/09/05 16:00 ID:bWsILyiw
item()←これ
>>334 そういう質問だったのか。メソッドitem()はいろんな所に
現われますからねえ。たとえばdocument.formsというのは
HTMLCollectionオブジェクトですから、item()というメソッド
を持っていまして、document.forms.item(0)で最初のフォーム
オブジェクトが取れます。
が、ふつーはそんなことしないでdocument.forms[0]と書きます
よね。つまりJavaScriptでは添字アクセスが使えるから、何番目
のものを取り出す、というときはこれを呼ぶ方が見た目簡単。
じゃあなぜitem()というメソッドがあるかというと、他の言語
でJavaScriptみたいに簡単に添字が使えない場合に使う、という
ことじゃないでしょうか。でもまあ、時々気分によってitem()を
使うこともありますよ、私。
>>335 なるほど!
何処かでdocument.getElementsByTagName(この辺忘れた).............item()...........
こんなのがあったから疑問だったのです。
ツイデニgetElementByTagNameの例文でも教えて頂ければコレ幸いかと......スンマセン
337 :
Name_Not_Found :01/09/05 16:35 ID:E4Tioa4Q
質問です。イラストのギャラリーページとして、メインのページAから呼び出した、別ウインドウBにそれらを表示したいのですが、 イラストによってサイズが違うので、それに合わせてそのウインドウBのサイズも変化させたいのですが、探してみてもそのようなものが見つかりません。 一度開いたウインドウは別ページからそのウインドウのサイズを変更するということは不可能なのでしょうか?もし可能であれば、説明しているページ、または、ソースを教えてください。よろしくお願いします。
338 :
Name_Not_Found :01/09/05 16:45 ID:bWsILyiw
>>336 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
function test() {
var l = document.getElementsByTagName('h1');
for(var i = 0; i < l.length; ++i) l[i].style.color = 'purple';
}
</script>
</head><body>
<h1>test...</h1>
<p><a href="javascript: test()">test...</a></p>
<h1>test...</h1>
<p>test..</p>
</body></html>
339 :
Name_Not_Found :01/09/05 16:53 ID:bWsILyiw
>>337 どーやって「探して」いるの?vol3で激しくガイシュツでは。
もちろん自分とこの画像を表示させている窓ならば大きさは
変更できますよ。
過去スレ見れないです。そのころ来ていなかったし…。パスワードいれなきゃ見れないってことは有料化したのかな…? ちなみに探す方法は、googleで引っかかりそうな言葉入れて検索です。
341 :
Name_Not_Found :01/09/05 17:56 ID:bWsILyiw
>>340 えー! 過去スレ見れないの。ショックだ。大変失礼しました。
簡単に説明すると。窓を別途開くのは
win = window.open(...);
でやりますよね。で、窓の大きさを変更したいときは
win.resizeTo(幅, 高さ);
これだけぴょーん。
>>338 どうもです。
やっぱgetElementByIdの方が楽っぽいですね。
有料化か…段々2chが2chでなくなって逝くな。
>>341 うぅ、組み込むのしかできない初心者ですすみません。
<HTML><HEAD><TITLE></TITLE><SCRIPT Language="JavaScript">
<!--
page = new Array();
page[0] = "a.html";
page[1] = "b.html";
page[2] = "c.html";
w = new Array("200","650","100");
h = new Array("630","240","280");
function winopen(n){
win=window.open(page[n],"newPage","width="+w[n]+",height="+h[n]);
win.moveTo(200,30);
}//-->
</SCRIPT></HEAD><BODY><CENTER>
<A href="JavaScript:winopen(0)">aaa</A>
<A href="JavaScript:winopen(1)">aaa</A>
<A href="JavaScript:winopen(2)">aaa</A>
</BODY></HTML>
これの場合どういじったらよいのでしょうか?よろしくお願いしますm(_ _)m
344 :
Name_Not_Found :01/09/05 20:38 ID:bWsILyiw
>>343 win.moveTo(200,30); win.resizeTo(w[n],h[n]);
ただ、resizeTo()の引数は窓の外枠の大きさなんで、タスクバー
その他のものの余分を加えた方がいいかも。
>>342 そりゃ、「この要素をどうかしたい」場合はgetElementById()
でしょう。getElementByTagName()は「この要素それぞれにつ
いて何かしたい」という場合に向いてますよね。
345 :
344 :01/09/05 20:45 ID:bWsILyiw
>>343 すいません、間違いました。毎回openしてたらダメダメじゃん。関数
winopen()のところを次のように直しませう。
var win = null;
function winopen(n) {
if(win == null) {
win = window.open(...これまでと同じ...);win.moveTo(200,30);
} else {
win.location.href = page[n]; win.resizeTo(w[n],h[n]);
}
}
346 :
342 :01/09/05 20:51 ID:AtyzepLc
<html><head><script> function test(){document.getElementById("sample").width="100"} </script></head><body> <a href="javascript:test()">サイズ変更</a><br> <img src="sample.png" id="sample" width="50" height="50"></body></html> ↑これはなりますが <html><head><script> function test(){document.getElementById("sample").width="100"} </script></head><body> <a href="javascript:test()">サイズ変更</a><br> <table border="1"><tr><td id="sample" width="50" height="50">サンプル</td></tr></table></body></html> ↑これはなりません。何故ならないんでしょうか?imgをtableに変えただけなのに…
347 :
Name_Not_Found :01/09/05 22:52 ID:x5kUH5bI
>>346 うちではtdのwidthも効くよ。IE5.5とNetscape6.1
348 :
Name_Not_Found :01/09/05 22:53 ID:bWsILyiw
>>346 なぜならないかというと、ImageとTableDataはかなり違う
オブジェクトだからでしょ。ImageではHTMLのwidth/height
属性に対応してwidth/heightプロパティがありますから、
そこに値を設定して幅を変えられましたね。TableDataは
そうなってないようなので、CSSプロパティのwidth/height
を操作しなければなりません。なので
document.getElementById('...').style.width = '100px';
のように、styleプロパティの下のwidthを設定し、なおか
つ単位を指定してください。こっちの方がどの要素にでも
同様に使えるのでこっちを覚えた方がいいですよ。少なく
ともImageで使えたからTableDataも同様だろうとか、そういう
ヤマカンはあまりおすすめできません。
>>347 うーん。tdでも直widthが変更できるの。それは
どっかにドキュメントされてるかなあ。
350 :
知ろうと同然 :01/09/05 23:17 ID:P7I2xszw
すみませんがごく初歩のブラウザーチェックJAVAについて教えてください。 JAVA多用して、いぜんIE用とNN用(簡易表示)2通りコンテンツ作っていたのですが、 NN(NC)バージョン6になってIE用に作ったものでも多少見え不具合はあっても実用レベルで 表示できるようになりました。 以前ブラウザーチェック設定でIE4,5以降用とその他およびNN用に振り分けるデータを参考本変えて使っていたのですが NN6について、別にNN4以前とNN6以降に振り分けるデータがなぜか作れません。 どうかNN6を追加してIE4,5、NN6とそれ以外に振り分けるこつを教えてください。
351 :
343 :01/09/05 23:18 ID:peXwPuEg
>>344 -345
ありがとうございます。無事に理想どおりのことができました。
親切に解説してくださってどうもです。
352 :
Name_Not_Found :01/09/05 23:24 ID:glDG2zf6
>>350 <script type="text/javascript">
<!--
if(document.all)//IE用
if(!document.all&&document.getElementById)//N6用
if(document.layers)//N4用
//-->
</script>
最も楽と思われるやつ
353 :
Name_Not_Found :01/09/05 23:26 ID:bWsILyiw
>>350 JavaとJavaScriptは別物です。
>>1 を見よ。これだけで答えて
もらえなくなることもあるから注意した方がいいよん。
N4とN6の区別はDOM2準拠かどうかだから、
if(document.getElementById) ...
がいいんじゃないですか? というか、どっちかというとブラウザ
のバージョンを意識して振り分けるよりも、呼びたい機能に対応
するプロパティがあるかどうかで枝分かれするのがいいと思って
います。
354 :
Name_Not_Found :01/09/06 01:37 ID:l.cYq8Oc
一つにページにいくつまでJavaScript入れていいの??
関数って、イベントハンドラで呼ばなくても関数名書けば呼べるんだね! <body> <script type="text/javascript"> kansuu(); </script> </body> すっかり忘れてた(藁
356 :
354 :01/09/06 02:46 ID:hydrqglc
訂正 一つのページにいくつまでJavaScript入れていいの??
358 :
Name_Not_Found :01/09/06 04:35 ID:Oq33in/c
最終更新日のスクリプト、下記のように書いてます。 でもこれだと、NNでの表示がおかしくなってしまいます。 一体どうしてなのでしょうか? <script language="JavaScript"> <!-- var date = new Date(document.lastModified); var year = date.getYear(); var mon = date.getMonth() + 1; var day = date.getDate(); if (mon < 10) { mon = mon; } if (day < 10) { day = "0" + day; } document.write('<font size="2">' + year + "." + mon + "." + day + "</FONT>"); // --> </script>
359 :
349 :01/09/06 07:50 ID:phrfOjHI
不安になって参考書を見たらtd要素に対応するオブジェクト
HTMLTableCellElementにはちゃんとwidthプロパティが
ありました。スマソ。
となると、
>>346 のうまくいかないのは何が原因なのかな。
360 :
324 :01/09/06 10:23 ID:yY4ktz5k
bWsILyiwさん、どうもありがとうございました! ま、また来ちゃうかもしれませんがよろしくお願いします!
361 :
Name_Not_Found :01/09/06 10:29 ID:2owc17R6
晒しage
362 :
Name_Not_Found :01/09/06 10:50 ID:phrfOjHI
>>358 Dateオブジェクトのメソッド、getYear()は使っちゃだめよ。
getFullYear()を使うべし。
363 :
知ろうと同然 :01/09/06 14:07 ID:ifojBV1A
>>352,353さん、有り難うございます。 現在ブランク半年(それでも知ろうと同然ではあり)なのでまた来ます。
364 :
知ろうと同然 :01/09/06 14:42 ID:GUTS4xNE
すみません。 >>350のブラウザーチェックの者です。 以下が動作不可(NN6振り分けを加える前は動作した)だったものです。 <SCRIPT LANGUAGE="JavaScript"> <!-- NN6 = "index1.html"; IE4 = "index1.html"; NN3 = "index-no.html"; IE3 = "index-no.html"; NN = "Netscape"; IE = "Microsoft Internet Explorer"; gApp = navigator.appName; gVer = navigator.appVersion.charAt(0); if (gApp == NN) { //Netscapeの場合 if (6 <= gVer) { //さらにVer.6以降のとき location.href = NN6; } else { //NetscapeでVer.4より前のとき location.href = NN3; } } else if (gApp == IE) { //Internet Explorerの場合 if (4 <= gVer) { //さらにVer.4以降のとき location.href = IE4; } else { location.href = IE3; } } else { //それ以外の場合全部 location.href = NN3; } // --> </SCRIPT> <script type="text/javascript"> <!-- if(document.all)//IE用 if(document.all&&document.getElementById)//N6用 if(document.layers)//N4用 //--> </script> を親切に御教授いただきましたが、 ちなみに上はどこがXだったのでしょうか、 教えてください。
365 :
Name_Not_Found :01/09/06 14:54 ID:phrfOjHI
navigator.appVersion.charAt(0)をIE5でやってみて下さい。 「4」が返るはずです。(5が返る場合もあるのかな? N6でやってみて下さい。 「5」が返るはずです。(多分 ですから、navigator.appVersionを使う場合は、navigator.appVersion.indexOf("MSIE 5") などとして、文字列を検索する必要があるようです。 これがウザイ。 だからせいぜいnavigator.appName.charAt(0)で「M」か「N」を判別して、 allコレクションが使えるか、getElementByIdが使えるか、などで分けるのがイイのではないかと、 愚見ながら思う次第であります。
367 :
356 :01/09/06 15:53 ID:CvKHD1/A
放置・・・(><)
>>367 わわ、ごめん。
別に数に制限はないんだけど・・・
何を気にしてるのかな?
369 :
Name_Not_Found :01/09/06 15:57 ID:tkh8SStU
370 :
知ろうと同然 :01/09/06 16:50 ID:72dEcjCg
>>366さん、有り難うございます。 またなにかあったら来ますヨロシク。
372 :
356 :01/09/06 17:27 ID:CvKHD1/A
<html><head>
<script type="text/javascript">
<!--
window.open("url","","");
//-->
</script></head><body>
<SCRIPT Language="JavaScript">
<!--
document.write("<img src='
http:// 〜〜/report/report.cgi?");
document.write(document.referrer+"' width=1 height=1>");
// -->
</SCRIPT></body></html>
こーゆーことしても大丈夫。
しかし、kentwebの解析ってjavascript切ってたら取れなかったような・・・
忘れたf(^^;)
374 :
354 :01/09/06 17:49 ID:CvKHD1/A
解析か初心者板に行った方がいいでしょうか…… とりあえず javascriptでリファを取る解析を使っています そのさい、スクリプトをオフにしていたら カウントそのものがされません そういう場合、<NOSCRIPT>タグを使えばいいと聞きかじりましたが、 このタグはサポートしていないブラウザに対するもので 故意にオフにしている場合は意味がないとも聞きました…… ご教授いただければ幸いです
376 :
:01/09/06 18:16 ID:w8npTLYY
故意にoffにしてても<noscript></noscript>内のimgタグで強引に取れると思われ。
DOMでドキュメントにアクセスすると、インラインの要素もノードリストオブジェクトの プロパティーとして保持されてますよね。N6ではHTMLのタグのインラインの要素は普通、 そのタグと並列というか兄弟として保持されているみたいですけど、IE5.5では あるタグ(A,SCRIPTなど)では兄弟として、あるタグ(P,H1など)ではその子として保持されて いるみたいなんです。なので、ノードをたどってアクセスする時、互換が取れません。 どうしたらいいでしょうか?(getElementById以外で)
379 :
Name_Not_Found :01/09/06 21:12
>>378 そうなんです! ブラウザによってこの辺のノード構造が違うんですよね。
でも兄弟になりますか? 私が試してみたところではある要素の内側にある
ものは子になってると思うけどなー。そういう意味じゃないのかな?
対応策ですが、結局「ノードを再帰的にたどりながら処理する」という
汎用のフレームワークにして、具体的な処理の部分だけそのつど変更する
とかそいういう感じにするんじゃないでしょうか。
323さん、 すみません、うまく説明できなくて。 集めたいデータをサーバー上に保管したいんです。 例えば、「名前」「住所」などをWEB上から入力させて それをtxtかcsvファイルにどんどん保存していくという… 前回書き忘れましたが、社内用のWEBサーバーで cgiはまだ使えない、とのことなので、javascriptでも収集できるのかな〜と思ったんです。 こんな説明でわかりますか?
>>362 「getFullYear()」ですね!
ありがとう!うまくいきました!
サンプル集をそのままコピペすると思わぬ落とし穴が
あるものですね。
382 :
Name_Not_Found :01/09/07 02:33
画像のプリロードを最初のページに設定しすぎると(40枚位) それ以降のページの読み込みがかえって遅くなりますか? たまに画面が真っ白になって再読み込みすると表示されたりします。
383 :
Name_Not_Found :01/09/07 02:46
マシンのパワーによるんじゃないかな? さすがに40枚はやったことないからなんとも言えないけど。
上2つ関係ないや、スマソ。
386 :
Name_Not_Found :01/09/07 06:03
body内に収まってる内容の高さ(コンテンツ高)を求めたいのですが body最下部の位置を求めたりする事って出来ますか? 以下の様にやってみても駄目でした。 <html> <head> <style type="text/css"> .divlay{position:relative;top:0px;left:0px;} </style> <script type="text/javascript"> function getPosition(div_name){ if(!document.all&&document.getElementById)return document.getElementById(div_name).style.top; if(document.all) return document.all(div_name).style.pixelTop; if(document.layers) return document.layers[div_name].top; } </script> </head> <body> <div id=doc_top class=divlay>top</div> <p><a href="javascript:alert(getPosition('doc_top'))">document top px</a> <p><a href="javascript:alert(getPosition('doc_end'))">document end px</a> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <div id=doc_end class=divlay>end</div> </body> </html>
387 :
Name_Not_Found :01/09/07 07:28
>>386 こんなのでどうでしょうか。ソースをすこし変えてみました。
<html>
<head>
<style type="text/css">
.divlay{position:absolute; top:0px;left:0px;}
</style>
<script type="text/javascript">
function getPosition(div_name){
if(!document.all&&document.getElementById)return document.getElementById(div_name).offsetHeight;
if(document.all) return document.all(div_name).offsetHeight;
if(document.layers) return document.layers[div_name].clip.height;
}
</script>
</head>
<body>
<div id=doc_top class=divlay>top
<p><a href="javascript:alert(getPosition('doc_top'))">document top px</a>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
</div>
</body>
</html>
388 :
Name_Not_Found :01/09/07 10:22
>>380 ブラウザ上のJavaScript「のみ」でサーバにデータを書き込む
ことはできません。CGIなどの協力がないとね。
389 :
らくらぶ・・・ :01/09/07 10:56
いやぁ、みなさん、、おぼえてくれてるかなぁ。。 ただいまーっす。 関係ないカキコミ スマソ。。
390 :
Name_Not_Found :01/09/07 11:05
あっ、らくらぶさんだ。ゲームはどうなったの(w
>>382 ヤリスギは何事もよくないよね。イベントハンドラをつけて
1つプリロード終わったら次のを開始するとか工夫したら?
391 :
らくらぶ・・・ :01/09/07 11:15
>>386 こんなんじゃあないのー?
どうぞ。
<Script>
document.write("<form>body最下部の位置<input></form>")
window.onresize=HeightValueChange;
function HeightValueChange()
{
document.forms[0].elements[0].value=document.body.clientHeight;
}
</script>
392 :
らくらぶ・・・ :01/09/07 11:19
>>390 おー覚えてくれてるヒトいるなんて感動っす。。
んとね、アレ以来なんも、手つけてないやー・・
>>387 しっかしさあ、<br> × 16 ってのもなんだかネェエ・・って
おもうYO..見てるこっちが恥ずかしくなる!
393 :
らくらぶ・・・ :01/09/07 11:32
ところで、オイラにも質問させてくださうぃ。 指定した外部ファイル(js)にダイナミックに切り替えたりする方法ないですか?? オイラの考えたのは以下の方法・・。 フォームでファイル名を取得して 実行を押すと新しいdocumentを書き出して、さらにそのなかで スクリプトを実行させて新しいjsファイルの中身を読み込ませる・・ でも、なぜか、動かん。頭イイヒト教えてください。お願いします。 *index.html <input value=実行 type="button" onClick="a()"><br> 外部ファイル名:<input value=data id="js">.js <script> function a() { filename= document.getElementById("js").value+".js"; document.write("<html>\n"); document.write("<script src="+filename+"><\/script>\n"); document.write("<script>\n"); document.write("document.write(\"<textarea>\"+txt[1]+\"<\/textarea>\")\n"); document.write("<\/script>\n"); } </script> *data.js txt = new Array(); txt[1]="あぼーん";
394 :
らくらぶ・・・ :01/09/07 11:39
と、、おもったらでけた。(藁
395 :
らくらぶ・・・ :01/09/07 11:41
なんか、日本語を指定するとエラーになるみたいだ。。欝。 これ、どうにかならないですかー・・。 みなさんの知恵を貸してください。ー
396 :
Name_Not_Found :01/09/07 11:50
>>393 そんな面倒なことしなくても、IE5.5だと次の方法でできますよ。
<script type="text/javascript" id="s1" src="old.js"></script>
とかしておいて、切り替えたいタイミングで
document.getElementById('s1').src = 'new.js';
これだけ。しかしN6/Mozillaで動かないなあ。よかったら
探求してみてください。
397 :
らくらぶ・・・ :01/09/07 11:53
うおうお!!!! そんな方法があったのか!!! ありがとう(;〜;
398 :
Name_Not_Found :01/09/07 11:56
>>395 日本語って、ファイル名がですか?ファイル名の日本語は
色々と問題がねえ。StringのメソッドencodeURICompnent()
でエンコードしちゃって、ファイル名も%なんたらにしておく
とか?
399 :
らくらぶ・・・ :01/09/07 11:59
>>398 解決したけど、いちおうレス。
うんにゃ、ちがいます。
外部ファイルの中で、変数txt[1]の中身を日本語にしとくと
バグるみたい、折れのさっきの方法だと。
いやー、しかし script の src を変えれるとは!知らんかた・・
400 :
らくらぶ・・・ :01/09/07 12:12
>>398 どーも、日本語に読まれていないようなのね
折れのさっきの方法だと。
encodeURICompnent()これって、どうやってつかうんだろ?
401 :
Name_Not_Found :01/09/07 12:44
>>400 「escape(文字列)」でエンコード(ASCIIだけの%つき)に直して
「unescape(エンコード済み文字列)」で元に戻すよね。昔からの
やり方だと。ただこれだと漢字コードがあってないと化ける。
「文字列.encodeURIComponent()」でエンコードして「エンコード
済み文字列.decodeURIComponent()」で戻すようにすれば、漢字
コード関係ない(というか全部UNICODEで統一)ので化けないわけ。
外部ファイルから読み込んだ時化けるようなら、encodeURIComponent()
した形の文字列(これはASCIIだから化けようがない)でデータを入れて
おいて、読み込んだ後でdecodeURIComponent()で日本語に戻したら
どうです? データのバイト数が多くなるという不利があるけどね。
388さんへ。 やっぱりcgiが使えないとできないんですね。 cgiが使えるようになるまで、待つことにします。 ありがとうございました。
403 :
名無しさん@シナプス切れてる。 :01/09/07 13:38
質問があります。 下のソースって何をしているのか分かる方いらっしゃいますか? これの入ったページを見ると、「スクリプトエラー」と出て、 見れないのですが…。ブラウザはIE4.07です。 どこが悪いのか分かる方、ご教授お願いします。 <SCRIPT language=JavaScript> <!-- function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_findObj(n, d) { //v4.0 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && document.getElementById) x=document.getElementById(n); return x; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } //--> </SCRIPT>
404 :
Name_Not_Found :01/09/07 13:51
>>404 悪いけどこれを読むだけで悪いとこ見つけろってのはパスですね。
デバッガを入れて「どの行のどこでエラーが出てるか」まで特定
してから相談して頂ければもうちょっと何か言えると思うんですけど。
405 :
名無しさん@シナプス切れてる。 :01/09/07 14:08
>>404 そうですよね。でも、スクリプトデバッカにかけても
エラーが出ないんですよ…。
これってIE4.07のバグなんですかね??
406 :
らくらぶ・・・ :01/09/07 14:28
>>404 質問以前に
っていうかさ、 礼儀ができてねぇんだよ
礼儀が
>>387 コテンツの位置を求めるのではなく
高さを求めれば良かったのですね。
あぁ。助かりました。ありがとうございました。
>>391 スクロールバーがでない場合なら
clientHeightで大丈夫ですね。
ありがとうございました。
>>403 MacroMediaのロールオーバーっぽい。
MM_pってのが謎なんだけど、これでいいのかな?
409 :
Name_Not_Found :01/09/07 16:37
window.close()を使っても警告を出なくするにはどうすれば良いのでしょうか?
410 :
Name_Not_Found :01/09/07 17:25
>>409 JavaScriptで開いた窓とかは大丈夫ですよね。だからそう
いうふうになるように持って行くとか。通常の窓は「黙って」
閉じるようにはできません。セキュリティ制約です。
>>410 やっぱり無理なんですか。
回答ありがとう。
413 :
Name_Not_Found :01/09/07 17:48
414 :
Name_Not_Found :01/09/07 18:15
オレモナー( ´∀`)
>>415 ワラタ。ナイス落とし。
つか、この真性(
>>412 )のせいでお客さん来なくなった感があるな。
お客でーす ブラウザが画像を表示しない設定かどうかを 確認する方法は無いものでしょうか?
右クリックに反応しないページを見かけたのですが JavaScriptらしいです。 ソースを持っている方、もしくは使い方をのせているサイトを ご存知ありませんか?
>>418 そんな極悪なページを作ってはいけません
>418 メニューからたどってソースを表示する メニューキーを押してソースを表示する キャッシュファイルをエディタで表示する JavaScript非対応のクライアントで見る JavaScriptを無効にして見る
>405 そもそもIE4.07ってナニ?
てことは、全くの初心者以外ならそっこうでソースをみることが できるということですか… それでもいいので是非教えていただけませんか。 あと、一旦保存して拡張子をtxtにかえてもみることができますよね。 言っていることがかぶっているかもしれませんが。
423 :
C:\sugar :01/09/08 02:04
あとURLの先頭に view-source でも見ることが出来る。 ブラクラ対策か。
424 :
Name_Not_Found :01/09/08 02:08
>>419 ソースをパクられたくないからって、そういうサイト作る人います。
すみません。ポケットリファレンスで勉強しています。 ループ制御についてなんですが、 <!-- for(i=0;i<9;i++) { if(i < 7) continue; document.write(i"<br>"); }for(i=0;i<9;i++) { if(i > 7) break; document.write(i"<br>"); }for(i=0;i<10;i++) { jump: for(j=0; j<10; j++) { if(i == 2)break jump; document.write(i*10+j,"<br>"); } }//--> なのですが、これは、、
iに0を代入、iが9未満ならインクリメント 7未満ならインクリメントcontinue、 8以上ならbreak、までは分かるのですが、 その後のjump:というのが何をさしてるのか わからないです。 代入、インクリメントまでは分かるのですが、 iが2に等しいならbreak jumpというのはどういうことでしょうか? ブラウザで確認すると、初めのループ7,8, 以降10,11..30,40..99となってます。iに10乗算でjを追加、、? iが10の位でループしてjが1の位でループなのでしょうか? でも20〜29が無いです。これがif(i == 2)break jump;の部分なの でしょうか?
<body onContextmenu="return false"> とかやってくれればIEでは目的を達することが出来るかと
break labelname; ループを終了し"labelname:"に跳びます
すげー さっそくつかわせてもらいます ありがとうございました。
先ほどこちらで駄スレを付けてしまった厨房です。 新スレは禁止だったんですね。一応軽く過去ログ見たんですが 見あたらなく建てちゃいました。(^^; 質問なんですが、改めてさせてください。 MIDIの流れるHPを作って、自分で試すと 小さなWMPがでて正しく再生できるのですが、 知人二人からページの出来具合を聞いたところ、 正しく音が流れずQuickTimeのロゴのような物が出てきて しまうらしいのです。知人のPCは二人とも最近のVaioで QTは以前にインストールしてたが消したということです。 どこをいじればこれがWMPに関連づけされるのか 教えていただけるとうれしいいです!よろしくです<(_ _)> 参考のため、入れたJavaをかいときます。 <script language="JavaScript"> <!-- myImageCnt = 3; // BGMの数 myImage = new Array( "image/renai21.mid", "image/chu.mid", "image/peace.mid" ); myRnd = Math.floor(Math.random()*myImageCnt); document.write('<embed src="',myImage[myRnd],'" loop="true" repeat="true" autostart="true" width = "70" height = "25" >'); // --></script>
↑場違いみたいです。 板汚してゴメナサイ。
432 :
Name_Not_Found :01/09/08 07:00
>>428 ちょっと違うよ。「labelname:のついたループ文から抜け出す」でしょ?
すみません、ちょっとまえこちらでお世話になった者なのですが、 <SCRIPT Language="JavaScript"> <!--page = new Array();page[0] = "a.html";page[1] = "b.html";page[2] = "c.html"; w = new Array("200","650","100");h = new Array("630","240","280"); var win = null; function winopen(n) { if(win == null) { win = window.open(page[n],"newPage","width="+w[n]+",height="+h[n]);win.moveTo(32,32); } else { win.location.href = page[n]; win.resizeTo(w[n],h[n]); }}//--></SCRIPT> これに、 "toolbar=No,lacation=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes" これを追加したいのですが、どのようにしたらいいのでしょうか?単純な質問ですみませんが、どなたかよろしくおねがいしますm(_ _)m
>>433 ...height="+h[n]+"toolbar=...");win.moveTo(...
もーちょっと勉強しようよ〜。
435 :
Name_Not_Found :01/09/08 11:31
mouseoverで画像を切り替える方法はよく知られていますが テーブルセルの背景色を切り替える方法はあるのでしょうか? 一度、どこかで見た記憶があるのですが...
>>435 激しく基本
<table border="1">
<tr><td
onmouseover="this.style.backgroundColor='pink';"
onmouseout="this.style.backgroundColor='';">
あいうえお</td></tr>
</table>
437 :
Name_Not_Found :01/09/08 11:49
>>434 すみません〜(>_<)
他のものとか見ておそらくその辺に入れるのかなと実験はしてみたんですが、 + を入れなきゃいけなかったんですね…こういう場合は…。
せめて本くらい持ってたほうがいいですね…。どうもありがとうございました。。
>>438 「+」は文字列の連結演算です。つまりオプション指定類を1つの
文字列としてwindow.open()に渡すために連結しまくってるのね。
>>379 for (var i = 0; i<document.body.childNodes.length;i++)
document.write(document.body.childNodes[i].nodeName+",");
こんな風にbodyの子のノードを見ると#textっていうnodeNameが出てきて、
その中には改行文字が入っているみたいなんですけど、これはどういう意味がある
のでしょうか?IE5.5とN6でこのノードがあるときと、無い時があるので互換が
取れないって言いたかったんです。意味わからないことを言ってごめんなさい。
>>441 <a><b></b></a>
と書いたときは、IEでもN6でも a の子は b だけだが、
<a>
<b></b></a>
と書いたときは、IEでは b だけが a の子がになるのに対し、
N6では<a>と<b>の間の改行文字も a の子として数えられる。
<tr>
<td>
としても、N6では<tr>と<td>の間の改行が tr の子になる。
HTML的にはヘンな感じだが、XML的にはよいのかもしれない。
443 :
Name_Not_Found :01/09/08 23:11
>>442 何しろ「white-space: pre」とかスタイルつけられたらその改行の
情報が必要になっちゃうわけで、勝手に削除したらまずいんじゃ
ないの?>>IE
members6.cool.ne.jp/~yoshi_a/morning/desktop/kabegami_2.html <layer></layer>無いのに動いトルーヨ。 何故。。。?
445 :
らくらぶ・・・ :01/09/09 05:54
>>418 >右クリックに反応しないページを見かけたのですが
>JavaScriptらしいです。
>
>ソースを持っている方、もしくは使い方をのせているサイトを
>ご存知ありませんか?
こんなかんぢかいなーん?ふふふーん
だれもおしえてくれないなんて不親切だなあ?
var message="";
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers)
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}
446 :
らくらぶ・・・ :01/09/09 05:56
>>445 右クリク制御スクリプート ですなり。
447 :
Name_Not_Found :01/09/09 12:03
>>445 ラクラブさん、この「(message);」てのは何?
>>442 そうなんですか!やっとわかりました。ありがとうございます。
449 :
Name_Not_Found :01/09/09 15:28
>>444 モノを動かすのに<layer>...</layer>を使う必要はない。という
か、N4だけでしか使えないので今や使わない方がよい。
450 :
Name_Not_Found :01/09/09 15:55
初心者スレから誘導されてきました。 自分の占いを製作したいのですがどのようにすればいいんでしょうか? 教えてください。
451 :
Name_Not_Found :01/09/09 16:43
ネスケって何ですか?マジレス。
>450 どうすればよいか、自分で占いなさい。
453 :
Name_Not_Found :01/09/09 17:11
>452 全くその通り! だから自分で占う為にもひとつ教えてはもらえませんか?
455 :
Name_Not_Found :01/09/09 17:28
>>453 占いのアルゴリズムを決めてくださいよ。入力データ
は何?生年月日?あと占っている当日の年月日?他に
なんかあります?そのデータからどうやって運勢を計算
するの?
456 :
Name_Not_Found :01/09/09 18:57
>>455 今日の運勢を生年月日でやろうかと。
「サザエさん占い」みたく軽いお遊び感覚にしたいのですが。
457 :
Name_Not_Found :01/09/09 19:52
>>455 サザエさん占いを知らないのですが、生年月日からどう
やって運勢を計算するんですか?それが分らないことには
プログラムの書きようがありませんよね。まあいいや、適当
に作ってみました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var result = ['大吉','中吉','小吉','凶'];
function calc() {
var td = new Date();
var dy = td.getFullYear()-parseInt(document.forms[0].elements[0].value);
var dm = td.getMonth()-parseInt(document.forms[0].elements[1].value);
var dd = td.getDay()-parseInt(document.forms[0].elements[1].value);
var i = (997 + dy*17 + dm*13 + dd*11) % result.length;
window.alert(result[i]);
}
</script>
</head><body>
<form action="#"><p>
<input type="text" name="y">年<input type="text" name="m">月
<input type="text" name="d">日<br>
<input type="button" onclick="calc()" value="占う">
</p></form>
</body></html>
458 :
Name_Not_Found :01/09/09 20:13 ID:t2rjtdIQ
>>457 ありがとう!!マジで助かります。
初心者過ぎて計算方法がいまいちわからないんですが
どんなやり方があるのでしょうか?
459 :
Name_Not_Found :01/09/09 20:17 ID:t2rjtdIQ
460 :
Name_Not_Found :01/09/09 20:51 ID:UXFOJPtk
>>458 -459
計算のしかたははっきり言ってデタラメですよ。まじめにやるん
なら占いの本を探しに行ってください。
>>457 のは「今日の
年月日と生年月日について、年の差の17倍、月の差の13倍、
日の差の11倍と「魔法の数」997を合計して4で割った余りが
0〜3のとき大吉/中吉/小吉/凶とする、というものです。
結果を「対応する結果のページに飛ぶ」形で表示したけれ
ば次のように直します。
var result=['result1.html','result2.html',...];
のように結果をページのファイル名として保持しておいて、
window.alert()の代わりに
window.location.href = result[i];
でブラウザにそのページを表示させます。それだけ。
461 :
Name_Not_Found :01/09/09 21:17 ID:t2rjtdIQ
>>460 細かい説明どうもありがとうございました。
これからもうちょっと勉強しなおします。
462 :
質問 :01/09/10 01:40 ID:AzRTYTzU
JavascriptがONだとその自分のページ等が表示されて OFFだとどこかへ飛ばすタグを教えてください。 文字表示程度だったらわかるんですがページの場合はどうしたらいいでしょうか? それとJavascriptをONにさせつつ右クリックを禁止させるタグを教えてください。 ↑ 各々はわかるんですが2つ同時にやろうとするとどうしても構文エラーが出てしまうんです。 それからActiveXを確実にONにさせるタグってわかります?
463 :
p40 :01/09/10 03:36 ID:zrL1Li8g
すみません。変数についてなのですが、 <!-- var a = 1; var b = 2; var c = 3; d = 10; function change() { var b = 4; c = 5; var d = 11; } change() with(document) { write("a = ",a,"<br>"); write("b = ",b,"<br>"); write("c = ",c,"<br>"); write("d = ",d,"<br>"); } の場合に、1,2,5,10と表示されるのですが、初めの1,2,3,10は global変数ですよね、その後にlocal変数でb,c,dの変更をしたので、 localが優先されて1,4,5,11になると思ったのですが、 関数内でのvar宣言はlocalであってますよね? 変数が同じ名前の場合にlocalが優先されませんでしたっけ? c = 3-->5となるのはvar宣言が無いので初めのglobal変数が そのまま書き換えられたのだと思うのですが。
464 :
Name_Not_Found :01/09/10 04:14 ID:RdG6yndk
>>463 document.writeの位置が違いますよん。
<script type="text/javascript">
var a = "glabal";
var b = "glabal";
function change()
{
var a = "local";
b = "local";
with(document)
{
write("関数内で書き出し<br>")
write("a = "+a+"<br>");
write("b = "+b+"<br>");
}
}
change()
with(document)
{
write("関数外で書き出し<br>")
write("a = "+a+"<br>");
write("b = "+b+"<br>");
}
</script>
465 :
らくらぶ・・・ :01/09/10 04:47 ID:3cnxPn/A
なんか、 厨房 が 増えたなあ、、 つまんねーの、、
466 :
Name_Not_Found :01/09/10 05:50 ID:Nq1FwWQQ
JavaScriptにも著作権ってあるんですよねぇ?? 「スクリプト使用はOKですが、著作権表示は消さないで 下さい」ってサイトのスクリプトの著作権表示を消して使用 するってのは、どうなんでしょう? 結構見かけますが・・・。(著作権表示のみ消してあって、 他の注釈等は残っているのでバレバレなんですが)
467 :
Name_Not_Found :01/09/10 06:07 ID:tekWqbNI
ジャバスクリプトで、URLを取得し、そのページを スクリーンショット化して表示する事ってできますか?
468 :
Name_Not_Found :01/09/10 08:24 ID:9qTz90Mc
>>465 らくらぶさん、しばらく掲示板やってたら、絶えず新しい(つまり過去
の解答を知らない)人が来るのはしょうがないでしょ。つまんないと
思ったら放置するしかないヨ。過去ログまだ読めないのかな。それで
>>445 の「(message);」って何?
>>466 プログラムは著作物であり著作権はあります。著作権表示を消したり、
消さなくても著作者の提示する条件を逸脱して使用するのは不法行為
です。アタリマエです。訴えるゾとか警告して、少額訴訟を起こす?
>>467 「どこから」URIを取得するの?ユーザに入力欄に打ち込ませるの?
それはできますし、そのページを表示させることはできます。画面
ショットはブラウザ内蔵のJavaScriptではできませんね。WSHとか
ならできるのかも知れないけど知らないのでパス。
469 :
Name_Not_Found :01/09/10 08:43 ID:9qTz90Mc
>>462 その構文エラーが出る奴を貼ってみな。貼らないで答聞いても
自分が進歩しないだろう。
>>462 JavaScriptをONにさせる方法なんてあるの?
472 :
Name_Not_Found :01/09/10 10:27 ID:enZ818r6
すみません。どなたか教えてください。 認証ダイアログはIEだと左上に出てしまうのですが、画面中央に 出す方法はありますか? IEのデフォルトということで方法は無いのでしょうか?
473 :
Name_Not_Found :01/09/10 12:15 ID:9qTz90Mc
>>470 「ONにしろコルア!」と表示する(w
>>472 調べたわけじゃないけど、認証ダイアログはブラウザが勝手に
開くもんだからJavaScriptで制御できるような気がしない。
474 :
Name_Not_Found :01/09/10 12:29 ID:enZ818r6
>>473 ありがとうございます。
そうですよね。。。
すみません。
475 :
463 :01/09/10 13:46 ID:mVfgky8g
>>462 <head><meta http-equiv="refresh" content="0;url=scriptoff.html"><script>
location.href="scripton.html";
</script></head>
scriptオンでは「scrioton.html」に飛ばし、scriptオフでは「scriptoff.html」に飛ばします。
ActiveXはわかりません。いじらない方が・・・
>1 名前:Name_Not_Found 投稿日:2001/08/10(金) 21:12
>前スレが900越したのでこちらに移行して下さい。
>JavaScriptの事でききたいことがあったらこちらへどうぞ。
>注: JAVA と JavaScript は別の物です混同しないようにして下さい。
>住人のみなさん、煽らないで優しくしてあげてね。
ラクラブ、お前一言余計だよ。何様?
>>476 まあまあ。でもね・・・
>それとJavascriptをONにさせつつ右クリックを禁止させるタグを教えてください。
こういう馬鹿にはビシッと言った方がいいような気もする。
478 :
Name_Not_Found :01/09/11 02:11 ID:Kd/JaybE
HTMLファイルを、HTMLアプリケーションにすれば、 ActiveXを使ってHDDにデータ保存できるとか。 ActiveXでのデータ保存のやり方をご存知の方、教えて下さい。
>>476 ラクラブは自己中だからしょうがない。
481 :
Name_Not_Found :01/09/11 02:26 ID:l0pB/1x2
「プルダウンメニューで画像を切りかえる」というのにチャレンジして 「やっと出来た!」って思ったら・・・NN4.×では動かない・・・。 何か致命的な間違いをしてるのでしょうか?? <script type="text/javascript"> <!-- function Imgchange(){ j=sono.ano.options[sono.ano.selectedIndex].value; document.chaimg.src="shasin/shasin"+j+".JPG" } --> </script> <form name="sono"> <select name="ano" onChange="Imgchange(this.options[this.selectedIndex].value)"> <option value="0" selected>写真1 <option value="1">写真2 <option value="2">写真3 </select> </form> <div> <img src="shasin/shasin0.JPG" name="chaimg" width=240 height=180 alt="スタ郎"> </div> 使用画像名はshasin/shasin0.JPG〜shasin/shasin3.JPGです。 (IE5.5では動くのですが)
呼び出し側で引数を指定してるのに、関数を定義するほうではそれを使用してないじゃん それが原因かどうかは知らないけど。
483 :
481 :01/09/11 02:51 ID:l0pB/1x2
使用画像名はshasin/shasin0.JPG〜shasin/shasin2.JPGの 間違いでした。
>>481 <html><head><script type="text/javascript">
<!--
function change(test){
if(test.ano.selectedIndex==1){
document.chaimg.src="1.gif";
}
if(test.ano.selectedIndex==2){
document.chaimg.src="2.gif";
}
if(test.ano.selectedIndex==3){
document.chaimg.src="3.gif";
}
}
//-->
</script></head><body>
<form>
<select name="ano" onChange="change(this.form)">
<option>index
<option>1
<option>2
<option>3
</select>
</form>
<img src="0.gif" name="chaimg">
</body></html>
やってみて。
一応N4でも動いたよ。
画像のurl、その他は適宜変更してや。
485 :
481 :01/09/11 03:27 ID:l0pB/1x2
482さん、484さん、ありがとうございました。 アドバイスを参考にもうひとがんばりしてみます。 (結局コケてたりして・・・うっ!)
あど?hぁいすて・・・
>>484 のscript、気に入らなかった?(^_^;
画像viewerに関しては、
>>224 さん、
>>238 さんの作品が秀逸かと思われ。
selectは開くのと選択するのと、2回動作が要るから好き嫌いが別れるよね。
javascriptって奥が深いなぁ。
487 :
481 :01/09/11 05:04 ID:7Zbt4/P.
皆様のおかげをもちまして、何とかNN4.×でも動くように なりました。ありがとうございました。 結果報告です。↓ <html> <head> <script type="text/javascript"> <!-- function change(test){ j=test.ano.options[test.ano.selectedIndex].value; document.chaimg.src="shasin/shasin"+j+".JPG" } //--> </script></head><body> <form> <select name="ano" onChange="change(this.form)"> <option value="0">index <option value="1">1 <option value="2">2 </select> </form> <img src="shasin/shasin0.JPG" name="chaimg"> </body></html>
>>476 meta http-equiv="refresh"未対応ならどこにも飛ばないと思われ。
489 :
Name_Not_Found :01/09/11 16:01 ID:RvrzL6qY
なーんにも書き込みがないので、台風で揺れ動いている様を 表現してみました。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html><head><title>???</title> <script type="text/javascript"> function shake() { window.scrollBy(-25+50*Math.random(), -25+50*Math.random()); } </script> </head><body onload="setInterval(shake, 100)"> <h1 style="padding: 10cm">Test...</h1> </body></html>
>なーんにも書き込みがないので、台風で揺れ動いている様を >表現してみました。 そんなカリスマさんがマンセーです。
ある本にはN6,MozillaはDOM1の「大部分をサポート」していると書いてありました。 これは本当ですか?というのも、何かに「完全にサポートしている」と書いてあった ような気がしたもので...
492 :
Name_Not_Found :01/09/11 21:10 ID:uKWU/SE6
<SCRIPT type="text/javascript"> <!-- function bytecheck() { ary = new Array(); for (i = 0; i < 3; i++) { var idx = i + 1; ary = frm.elements[i].value.length; if ( ary < 6 ) { alert( idx + "番目のフォームが 6文字以下です。" ); return false; } } } // --> </SCRIPT> <FORM NAME=frm> <P> No1: <INPUT TYPE="text" NAME="txt1"><BR> No2: <INPUT TYPE="text" NAME="txt2"><BR> No3: <INPUT TYPE="text" NAME="txt3"><BR> </P> <INPUT TYPE="button" VALUE="OK" onClick="bytecheck()"> <INPUT TYPE=reset VALUE="取消"> </FORM> これをelementsを使わないでフォームのNAME属性を指定して for文で回したいんですが、うまくいきません… どなたか知恵を貸してもらえませんか。 (FROMやIF文をひとつづつ記述するのではなく、 あくまでforでまわしたいのですが)
>>492 Name指定ってなぜ?
Elementsでまわす方が確実だと思うけど。
ところで、俺も質問させて。
Macの IE4.01で JavaScriptがうまく動かないんだけど、
どこかにこの辺の対比表がある場所ない?
Winの NC4.76, NC6, IE5.01と、
Macの NC4.7では動作確認済みなんだけど。
機能的には、Select のAと Bがあって、
Aを切り替えたときに Bの内容を動的に変更するような
JavaScriptなんだけど…。
494 :
492 :01/09/11 21:53 ID:uKWU/SE6
>>493 Elementsだと、上から順にプログラムを読み込んで処理するでしょう?
直接フォームを指定しつつ、なるべく簡潔にまとめたいと思って
自分でも色々書いてみたのですが、上手く動きませんで。
もちろん、フォームひとつにつきIF文ひとつ書けば(NAME指定で)
ちゃんと動くのですが。
なんとかもっと短縮できないかな…
495 :
Name_Not_Found :01/09/11 22:18 ID:hxd2/rEA
こんな感じでいいのかな?勘違いしていたらスマソ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <head> <title>test</title> <script type="text/javascript"> textName = ["txt1", "txt2", "txt3"] function bytecheck() { var d = document.forms["frm"]; var a = new Array(); for (i=0; i<textName.length; i++) { a = d.elements[textName[i]].value.length; if ( a<6) alert( (i+1) + "番目のフォームが 6文字以下です。"); } } </script> </head> <body> <form name=frm> <p> No1: <input type="text" name="txt1"><br> No2: <input type="text" name="txt2"><br> No3: <input type="text" name="txt3"><br> </p> <input type="button" value="OK" onClick="bytecheck()"> <input type=reset value="取消"> </form> </body> </html>
496 :
Name_Not_Found :01/09/11 22:24 ID:RvrzL6qY
497 :
Name_Not_Found :01/09/11 22:27 ID:RvrzL6qY
>>494 elementsだと読み込みながら回すって?ソースはブラウザが
一度だけ解析してforms配列やelements配列ができ、あとは
その配列を参照するだけでしょ?そういう意味じゃなくて?
498 :
492 :01/09/11 22:29 ID:uKWU/SE6
>>495 すごいすごい!ありがとうございます!
完璧ですね。
私は配列の入れ方(textName = ["txt1", "txt2", "txt3"] の辺り)を
間違えていてそれで動かなかったみたいです。
ほんとありがとうございました。スッキリ(^。^)
>>497 いえあの、一度読み込んで上から順に判断していくものだと
思っていたのですが。違うのかな…(自信ない)
499 :
Name_Not_Found :01/09/11 22:35 ID:RvrzL6qY
>>498 いやもちろん、読み込むのが一度だという意味です。だったら別に
間違ってないと思いますよ。
501 :
:01/09/12 05:02 ID:vAcBWRrk
502 :
478 :01/09/12 08:48 ID:xDWvHnbE
>>479 ありがとうございました!
こんな情報初見なんですが、メジャーな技術なんでしょうか?
503 :
Name_Not_Found :01/09/12 11:28 ID:H2kb9sSw
>>502 Microsoftがやってることは何でもメジャーだと定義するなら
メジャーということに…(w
実際に使ってる人はどれくらいいるんでしょうね?
あの、超初心者質問なのですが 解像度を判断して異なるリンク先に飛ばすことって出来ますか?
506 :
Name_Not_Found :01/09/12 23:10 ID:r13pS8rM
解像度ってスクリーンサイズでなくて?WEBなんだから・・。 sw = screen.width; if(sw < 800) location = '0.html'; else if(sw >= 800 && sw < 1024) location = '1.html'; else if(sw >=1024 && sw < 1280) location = '2.html'; else if(sw >=1280 && sw < 1600) location = '3.html'; else if(sw >=1280 && sw < 1600) location = '4.html'; else if(sw >=1600) location = '5.html';
↑ダブってる・・。間違いです。
508 :
Name_Not_Found :01/09/12 23:14 ID:vAcBWRrk
screen.availWidth / screen.availHeight または screen.width / screen.height ですか 「解像度」なんて言ってしまうと混乱しちゃうんだ 実際のサイズ(cmなりインチ)はユーザーに聞かないと分からない
509 :
p52 配列要素を文字列に変換 :01/09/13 01:11 ID:5HbrGm4c
配列要素を文字列に変換することについてなのですが、 <script type="text/javascript"> <!-- theData = new Array(123,456,789); document.write("<br>変換前::",theData[0], theData[1]); str = theData.toString(); document.write("<br>変換後::", str[0], str[1], str[2], str[3]); //--> </script> の場合に、変換前の123456と表記されるのは分かるのですが、 変換後はstrのindexは[0]-[3]で4個あるのに123,としか表記されないのは 何故ですか?
510 :
Name_Not_Found :01/09/13 02:14 ID:CVRzdgZc
Java scriptで画像を1秒毎に自動差し替えする方法ってありますか?
511 :
504 :01/09/13 02:41 ID:xwJKKVSw
>>506 -508
ありがとうございます!助かりました。
>>505 すみません。スクリーンサイズのことです。
512 :
スイマセン :01/09/13 06:01 ID:tVElPVA2
右クリック出来ないようにするのはどうしたらいいんですか?
>512 マウスの右ボタンを外してください。
514 :
Name_Not_Found :01/09/13 09:21 ID:rXuL2Zck
プルダウン式リンクで、新規ウィンドウを開かせるにはどうしたらいいんですか?
<form name="link" method="post" target="_blank">
<select name="url" size="1" style="background-color:#323232; border-style:0; color: #ffffff; font-family: osaka, MSP ゴシック">
<option value="-">--Contents--</option>
<option value="
http://www.yahoo.co.jp/ ">├Yahoo</option>
</select>
<input value="Go!" type="submit" align="_blank" onclick="location.href=url.options[url.selectedIndex].value">
</form>
訂正よろしくおねがいします。
515 :
Name_Not_Found :01/09/13 12:16 ID:fNGEpWKI
>>509 あなたがやっていることは「配列データを1つの文字列にする」
ことです。
> theData = new Array(123,456,789);
> document.write("<br>変換前::",theData[0], theData[1]);
> str = theData.toString();
配列のtoString()は、配列の各要素を文字列にしたあとそれを
「,」で区切ってつなげた文字列を作ります。したがってstr
の値は「"123,456,789"」という文字列になっています。strは
配列ではないので、そのプロパティstr[0]が何であるかは言語
仕様上は規定されていません。
> document.write("<br>変換後::", str[0], str[1], str[2], str[3]);
なので「ゴミ」が出力されているわけですね。本当は何がやり
たかったのか説明してみませんか?ちなみに数値の配列を文字列
の配列に変換したかったのなら次のようにするべきでしょう。
str = new Array();
for(var i = 0; i < theData.length; ++i) str.push(theData[i].toString);
でもJavaScriptって文字列が必要なところでは適当に文字列にして
くれるので、わざわざこんな変換をする必要ってあんまり感じないな。
516 :
Name_Not_Found :01/09/13 12:25 ID:fNGEpWKI
>>510 N6/Mozilla/IE5.5。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var cur = 0, arr = ['t0.png', 't1.png', 't2.png', 't3.png'];
function step() {
if(++cur >= arr.length) cur = 0;
document.getElementById('i1').src = arr[cur];
}
</script>
</head><body onload="setInterval(step, 1000)">
<p><img id="i1" src="t0.png"></p>
</body></html>
517 :
Name_Not_Found :01/09/13 12:26 ID:fNGEpWKI
518 :
Name_Not_Found :01/09/13 12:27 ID:fNGEpWKI
>>514 「location.href=url.options[url.selectedIndex].value」を
「window.open(url.options[url.selectedIndex].value)」に変更。
>>515 すみません、ポケットリファレンスで勉強してまして、
これはp52の例題をそのままコーディングしたんです。
だから特になにがしたいというのは無いんです。
前の質問も修正されたし、、、
520 :
509 :01/09/13 13:50 ID:HGmZ8/TA
519=509です。
521 :
Name_Not_Found :01/09/13 14:30 ID:fNGEpWKI
>>519 ということは、その本がトンデモナイんとちゃう?
まっとうなJavaScriptプログラマなら書かないような
トンデモナイ例題だと思うんだけど。
522 :
514 :01/09/13 16:06 ID:2wWDG6gI
>>518 ありがとうございます。
ためしてみたところ、きちんと開いて指定したURLにいくのですが、
なぜかもういっこウィンドウが開いてしまいます(元々のページ)
どなたか
>>514 のエラーを教えていてだけないでしょうか?
宜しくお願いします。
523 :
Name_Not_Found :01/09/13 17:06 ID:fNGEpWKI
>>522 type="submit" を type="button" にするのが吉かな?
<html><head><script> var count1=0; var count2=0; function countUp(hikisuu){ if(count1++<10){ document.sample.atai.value=count2; count2++; setTimeout("countUp()",1000); }else{ if(hikisuu==1){ document.write("finish"); }else if(hikisuu==2){ document.write("終わり"); } } } </script></head><body> <a href="#" onClick="countUp(1)">start</a> <a href="#" onClick="countUp(2)">開始</a> <form name="sample"><input type="text" name="atai"></form> startを押したら9まで数えて自動的に「finish」を、 開始を押したら「終わり」を表示させようと思ったんですが、 数え終わったあと、もう一度押さないと、表示してくれません、、、 どこを直したらいいんでしょうか?
>>524 何がしたいかわからないけど
document.writeはページをロードする時しか使わないほうがイイ
526 :
Name_Not_Found :01/09/13 21:28 ID:fNGEpWKI
>>524 document.writeln()にしたらどうですかね。ボタンからは
使わない方がいいというのは
>>525 に賛成だけど。また何か
の本の例題でしょうか?やりたい事が見えない質問って答えに
くいよね。
527 :
524 :01/09/13 22:51 ID:fD7KZtQ.
返事が遅れてスイマセン。 document.writeを止めて、以下のようにします。 else{ if(hikisuu==1){ document.sample.atai.value="finish"; }if(hikisuu==2){ document.sample.atai.value="終わり"; } } } やりたいことって言うのは、else以下の処理を関数に渡された引数によって場合別けしたいんですよ。 でも、if(count1++<10)の条件を終えたら止まってしまうんですよね、、、
529 :
Name_Not_Found :01/09/13 23:40 ID:fNGEpWKI
>>527 はあなるほど。setTimeout()から関数countUp()を呼ぶときは
引数がナイですよね。とするとそのときcountUp()のなかで
hikisuuを調べると当然、1でも2でもないわけです。hikisuuが
1用のcountUp()と2用のcountUp()を分けるとか、引数を渡す
んじゃなくて広域変数に入れておくとかしたらどないだす?
530 :
519 :01/09/13 23:45 ID:h53JO.ng
>>521 そうなんですかねぇ、、、
でも買ってしまったからなぁ。
ひとまずこれを一通り終わらしてから、
新しいの探して勉強します。
ここで質問したら例題が全部修正されるので修正したのを本に出来そう(トホホ
531 :
Name_Not_Found :01/09/14 00:15 ID:xzgAqo4U
技評の「JavaScriptポケットリファレンス」は 中級者向けを自称してるから初心者は 使わないほうが良いのと違うかね
532 :
Name_Not_Found :01/09/14 00:22 ID:MkGdtHww
その本に本当に「配列をtoString()した結果に対して プロパティ0、1等を指定してみせる」なんていう例題が 載っているの?立ち読みしてみようかな…
533 :
519 :01/09/14 01:25 ID:PHnNMJPI
そうなんですか? でも勿体ないし、実際例題のスクリプトはちゃんと 動いてるので、なんとか辞典みたく穴がないので、 勉強になると思いますし。しばらくこれでやってみます。 まずJavaScriptに慣れようと思います。
534 :
Name_Not_Found :01/09/14 02:14 ID:I4hvW.AY
>>516 ご親切にありがとう。早速やってみます。
535 :
527 :01/09/14 02:39 ID:jhiS.856
>>529 レスありがとうございました。
>hikisuuが1用のcountUp()と2用のcountUp()を分ける
>引数を渡すんじゃなくて広域変数に入れておく
ムズイっす!言ってることがムズイっす!
hikisuuに「1」又は「2」を渡して別けたつもりなんですが、、、
DQNの漏れには解らないっす!(愚
逝きます、、、
ありがとうございました。
536 :
Name_Not_Found :01/09/14 08:23 ID:MkGdtHww
>>535 そんなに難しい?もう逝ってしまいましたか?
だからー、countUp()は「setTimeout("countUp()", 1000);」
とゆーところ「からも」呼び出されるでしょーが。この時は引数がナイ
でしょ?
もひとつの案として「setTimeout("countUp(" + hikisuu + ")", 1000);」
とするのもありかな。
537 :
493 :01/09/14 11:43 ID:P/Nlnl.A
>>501 こういうのを求めていたんだ、サンクスコ
探してたけど、Macにも詳しいのが見つからなくて困っていたトコ。
538 :
535 :01/09/14 17:42 ID:IS7vmgAQ
>>536 ありがとうございました、動きました。
>>>この時は引数がナイでしょ?
確かにないですね、んで、setTimeout("countUp(hikisuu)",1000);
としてみました。
エラー:hikisuuが定義されてません、と出たのでfunctionの外にvar hikisuu;
を入れてみました。(グローバル変数って言うんですか?)
動きましたが、これまたelse以下を実行しませんでした、んで、貴殿の助言通り
setTimeout("countUp(" + hikisuu + ")", 1000);とした所、動きました。
setTimeout("countUp(hikisuu)",1000);とsetTimeout("countUp(" + hikisuu + ")", 1000);
前者はhikisuuを文字列の一部と判断してるんですかね?
この微妙な差が謎ですが、ありがとうございました。
539 :
Name_Not_Found :01/09/14 18:33 ID:MkGdtHww
>>538 び、微妙な差が謎ですか… ^_^; 謎が解消されるまでは、あまり
一気にプログラム書かない方がよろしいかも知れませんですね…
とりあえずおつかれ様でした。
540 :
Name_Not_Found :01/09/14 20:24 ID:q1aWVgdQ
フォームを複数作って、入力した値が 全角文字かどうかチェックするものを 作ろうとしているのですがどうにもうまく動きません。 どこが悪いのか突っ込みお願いします。 <SCRIPT type="text/javascript"> <!-- // 全角文字列チェック function frmcheck() { textName = ["txt1","txt2","txt3","txt4","txt5","txt6","txt7"] for ( idx1 = 0; idx1 < textName.length; idx1++ ) { for( idx2 = 0; idx2 < frm.elements[textName[idx1]].value.length; idx2++ ) { var cnt = 0; len = escape( frm.elements[textName[idx2]].value.charAt(idx2) ); if( ( navigator.appName.indexOf("Netscape") != -1 ) && len.length == 6 && len.indexOf("%") != -1 ) { cnt++; } else if ( ( navigator.appName.indexOf("Internet Explorer") != -1 ) && len.length == 6 && len.indexOf("%uFF") == -1 ) { cnt++; } if( cnt > 0 ) { alert("フォーム " + (idx2+1) + " に全角文字が含まれています。"); return false; } } } } // --> </SCRIPT> <FORM NAME="frm"> フォーム1:<input size="50" type="text" maxlength="20" name="txt1"><BR> フォーム2:<input size="50" type="text" maxlength="20" name="txt2"><BR> フォーム3:<input size="50" type="text" maxlength="20" name="txt3"><BR> フォーム4:<input size="50" type="text" maxlength="20" name="txt4"><BR> フォーム5:<input size="50" type="text" maxlength="20" name="txt5"><BR> フォーム6:<input size="50" type="text" maxlength="20" name="txt6"><BR> フォーム7:<input size="50" type="text" maxlength="20" name="txt7"><BR> </FORM> フォームの数より多いの文字数をいれると ちゃんと動くのですが、文字数がフォームの数より すくなくなるとその文字数より後のフォームでは 全角チェックが動かない、という状況です。
541 :
Name_Not_Found :01/09/14 23:17 ID:MkGdtHww
>>540 この↓行の最初の「idx2」は「idx1」じゃないの。
> len = escape( frm.elements[textName[idx2]].value.charAt(idx2) );
しかしなんか無用に長いような気がする…私も作ってみました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
function check() {
for(var i = 0; i < 5; ++i)
if(document.forms[0].elements[i].value.match(/[\u3000-\uffff]/))
window.alert('field ' + (i+1) + ' contains Zenkaku...');
}
</script>
</head><body>
<form action="#"><p>
<input type="text" size="50"><br>
<input type="text" size="50"><br>
<input type="text" size="50"><br>
<input type="text" size="50"><br>
<input type="text" size="50"><br>
<input type="button" value="check" onclick="check()">
</p></form>
</body></html>
542 :
Name_Not_Found :01/09/15 00:31 ID:SXACCndE
<head> <script type="text/javascript"> function change(){ document.myform.elements[1].value="6.html"; document.myform.elements[2].value="7.html"; document.myform.elements[3].value="8.html"; document.myform.elements[4].value="9.html"; document.myform.elements[5].value="10.html"; } </script> </head> <body> <form name="myform"> <input type="button" value="urlを変える" onClick="change()"> <input type="button" value="1.html" onClick="location.href=this.value"> <input type="button" value="2.html" onClick="location.href=this.value"> <input type="button" value="3.html" onClick="location.href=this.value"> <input type="button" value="4.html" onClick="location.href=this.value"> <input type="button" value="5.html" onClick="location.href=this.value"> </form> </body> 関数change()のところ、短く出来ませんかね…?
>>542 <script type="text/javascript">
var flag = true;
function change(){
var p=document.myform.elements;
if(flag)p[0].value="uriを戻す";else p[0].value="uriを進める";
for(var i = 1;p.length>i;i++){
if(flag)p[i].value=i+5+".html";else p[i].value=i+".html";}
flag=!flag;}
</script>
>>543 どうもです。
トグルスイッチ使うってハイテクですね…
全く思い付きませんでした…
しかも行ったり来たりしてますやん!w(@□@)w
感謝。
545 :
540 :01/09/15 08:58 ID:3K96CTs6
>>541 す、すごい。完璧ですね。
ありがとうございます。
おみそれしました。
546 :
らくらぶ・・・ :01/09/15 21:50 ID:MQSwM8yI
<input type="button" value="start" onClick="st('1')"> <input type="button" value="開始" onClick="st('0')"> <br> <input id="box"> <script> var tmr; max = 10; function st(lang){ if (lang ==1){message = "finish"} else if (lang == 0){message = "完了"} b1=document.getElementById("box") b1.value =""; count = 0;flg1 = 0; clearTimeout(tmr) func2(); } function func2() { if (count == max){ b1.value=message; flg1==1; clearTimeout(tmr)} else if (count < max){ b1.value=count; count++} if (flg1==0){tmr=setTimeout("func2()",50)} } </script>
547 :
らくらぶ・・・ :01/09/15 21:53 ID:MQSwM8yI
>>524 さんへ。
そういう場合は、初期関数を何度も繰り返すより
別の関数を新たに作ってやったほうがすんなり解決するとおもいます
別の関数版を
>>523 につくってあるので、ご参考になさってみてください。
macIE5.0使いの人居る? innerHTMLでテーブルとか書き出してみてYO。 ナメた表示しやがるぞ。
550 :
Name_Not_Found :01/09/16 13:13 ID:urTwZ59g
>>548 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<title>test</title>
<script type="text/javascript">
function test() {
document.all("test").innerHTML = "<table border='1'><tr><td>これは</td><td>innerHTMLによって</td></tr><tr><td>書き出された</td><td>テキストです</td></tr></table>\n";
}
</script>
</head>
<body>
<div id="test"></div>
<div><a href="javascript:test()">ここ</a>をクリックするとテーブルを書き出します。</div>
</body>
</html>挿入される文字列の最後に"\n"を加えるとうまくいくよ。
551 :
Name_Not_Found :01/09/16 19:52 ID:RUMplUdY
552 :
Name_Not_Found :01/09/16 21:04 ID:sfTS3V16
553 :
552 :01/09/16 21:07 ID:sfTS3V16
>>550 ホントだ、ズレないね。
n\ってどんな効果なの?
554 :
Name_Not_Found :01/09/16 23:16 ID:RUMplUdY
>>553 「\n」は改行文字…知らない人っているんだ。なんだn\って。
>>552 ホレ。(ドラマ見てたのスマソ)。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
th, td { border-style: solid }
</style>
<script type="text/javascript">
function test() {
var tbl = document.createElement('table');
document.getElementById('b1').appendChild(tbl);
for(var i = 0; i < 10; ++i) tbl.insertRow(i);
for(var i = 0; i < 10; ++i)
for(var j = 0; j < 10; ++j) tbl.rows[i].insertCell(j);
for(var i = 0; i < 10; ++i)
tbl.rows[i].cells[i].appendChild(document.createTextNode('### '+i));
}
</script>
</head><body id="b1">
<p><a href="javascript: test()">test...</a></p>
</body></html>
555 :
Name_Not_Found :01/09/16 23:28 ID:RUMplUdY
>>547 らくらぶさんどーしたの、言葉づかいが変だよ。熱でも
あるんじゃない?
557 :
らくらぶ・・・ :01/09/17 02:03 ID:EQYwN1K.
ゴラァ ばれたか。はぁあ。、質問きょうも、ないのかあ つまらんねえ。
558 :
らくらぶ・・・ :01/09/17 02:11 ID:EQYwN1K.
559 :
481 :01/09/17 03:36 ID:URgCxY5I
あれから、更に改良しようとしてコケまくってます。 とりあえず、「プルダウンメニューで選んで画像を変更する」は皆様のご協力で 完成したのですが↓ <html> <head> <script type="text/javascript"> <!-- function change(test){ j=test.ano.options[test.ano.selectedIndex].value; document.chaimg.src="shasin/shasin"+j+".JPG" } //--> </script></head><body> <form> <select name="ano" onChange="change(this.form)"> <option value="0">index <option value="1">1 <option value="2">2 </select> </form> <img src="shasin/shasin0.JPG" name="chaimg"> </body></html> ↑に<input type="text">のフォームをくっつけて、そのvalueに説明文 msg[i](i==プルダウンメニューのvalue)を表示させようとしてザセツし ました。(画像名もmsg[i]もvalueをひっぱってきて使いまわしたいので すが) どのようにmsg=new Array()を組み込んだら動くようになるのでしょう?
560 :
Name_Not_Found :01/09/17 09:29 ID:ne9jQ0kE
>>559 こんなの、どーにでもできて然るべきなんだけどな。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var msg = ['Image 0', 'Image 1', 'Image 2'];
function change() {
var i = document.forms[0].elements[0].selectedIndex;
document.images[0].src = 't' + i + '.png';
document.forms[0].elements[1].value = msg[i];
}
</script>
</head><body>
<form action="#"><p>
<select name="menu" onchange="change()">
<option value="0">0</option><option value="1">1</option>
<option value="2">2</option>
</select>
<img src="t0.png" alt="an image"><br>
<input type="text" name="exp" value="">
</p></form>
</body></html>
561 :
らくらぶ・・・ :01/09/17 11:02 ID:i9ZAyy9M
>>560 のってさあ、ケキョーク i = document.forms[0].elements[0].selectedIndex;
でファイル名きめてんなら、option のvalueって意味ないぢゃーん。
<script>
msg = new Array;
msg[0] = "image1";
msg[1] = "image2";
msg[2] = "image3";
function Change()
{
fm = document.getElementById("menu")
FileNum = fm.options[fm.selectedIndex].value;
document.getElementById("img").src = 't' + FileNum + '.jpg';
document.getElementById("img").alt = 't' + FileNum + '.jpg';
document.getElementById("exp").value = msg[fm.selectedIndex];
}
</script>
<select id="menu" onchange="Change()">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<img id="img">
<br>
<input id="exp">
562 :
:01/09/17 11:05 ID:i9ZAyy9M
563 :
Name_Not_Found :01/09/17 12:54 ID:ne9jQ0kE
>>561 そうね、valueないとhtmllintで文句言われるからって。
JavaScriptでやるんだったらmsgみたいに配列にデータ
入れとく方が何かと便利だし…まあその辺は好きなように
すればいいと思うんですよね。
>>563 しまった、optionのvalueはなくても文句言われなかったよ。
565 :
初学者 :01/09/17 13:08 ID:R/JLPX.Y
質問です。 HTML4.01の文法だと<form>にはaction属性が必須とのことですが、 cgiでなくJavaScriptで起動するフォームには別に必要ありません。 それどころか下手な属性値を入れると却って妙な挙動を起こすことがあります。 仕方無くaction=""と空指定でゴマカシてる現状です。 みなさんはどうしてらっしゃいますか。
566 :
Name_Not_Found :01/09/17 14:17 ID:ne9jQ0kE
>>565 私も悩みましたが今は「action="#"」(カレントドキュメントを表す
相対URI)を指定してます。もっとも、そのようなフォームには絶対
<input type="submit">をつけないようにしてるので、提出されてしま
うことはないと思うのですが(もちろんJavaScriptでもsubmit()は呼ば
ない)。
567 :
Name_Not_Found :01/09/17 14:29 ID:9LefElkY
>>566 それはつまりイベントハンドラonSubmitを利用したフォームは作れないってこと? チト不自由ぢゃありませんか。
568 :
Name_Not_Found :01/09/17 14:45 ID:ne9jQ0kE
>>567 別にonsubmitで横取りして細工した後提出するんなら
actionも提出先のCGIなりのURIを書くわけで、そのとき
はsubmitボタンがあっても構わないわけ。
でも今の場合はactionが実質ナイんだから提出されちゃ
困るわけで。その場合はボタンは
<input type="button" onclick="...">
を使うようにしてる、ということですね。
569 :
567 :01/09/17 14:50 ID:K7p9H9Gk
>>568 ん?
ええっと、CGIを使用しないでonSubmitを利用したフォームの場合、
やはりactionは要りませんよね?
それとも"javascript:関数()"と書くんですか、JavaScriptだけの場合は。
570 :
Name_Not_Found :01/09/17 14:54 ID:ne9jQ0kE
>>569 acitonは書かないとHTML的に正しくないので何を書くか
という話で、しょうがないから""とか"#"とか指定する
けどそれが使われることはないようにするという話じゃ
なかったの?なんか噛み合っていない。
571 :
481 :01/09/17 15:10 ID:NTwAeJa6
560さん561さん、どうもありがとうございました。 <script type="text/javascript"> msg = new Array(); msg[0] = "a"; msg[1] = "b"; msg[2] = "c"; function Changei(test) { FileNum = test.menu1.options[test.menu1.selectedIndex].value; document.img1.src = 't' + FileNum + '.JPG'; document.fm.exp.value = msg[FileNum]; } </script> <form name="fm"> <select name="menu1" onChange="Changei(this.form)"> <option value="0">画像を選んでね <option value="1">1 <option value="2">2 </select> <input name="exp" value="a"> </form> <img src="t0.JPG" name="img1"> でIE5.5とNN4.7で動くようになりました。 本当にありがとうございました。
572 :
Name_Not_Found :01/09/17 20:47 ID:w9sRA5XA
573 :
Name_Not_Found :01/09/17 21:28 ID:b.Ns1wOk
>572 Java と JavaScript は別物です.ここは「JavaScript」の質問用です. で,使い方は(???.txt に)書いてあります. 読んでもわからない場合は初心者スレッドで聞いてみてください.
574 :
Name_Not_Found :01/09/17 23:44 ID:cq6BeV/k
>>573 失礼しました。えーと、Javaの質問はWEBプログラミング板で
いいんでしょうか?
575 :
Name_Not_Found :01/09/18 03:48 ID:doFfJ8Lk
576 :
Name_Not_Found :01/09/18 17:31 ID:grznOqZY
質問が全然こないぞage
divを使ってアニメーションをしようと思うのですが まだ勉強し初めて数週間なもので 引数とかわからず function visiDiv2() { var the_div; if(window.document.all) { the_div =window.document.all.position_02.style; }else if(document.layers){ the_div =window.document.position_02; }else{ alert("このスクリプトはNN/IEの4.0以降でのみ動作します"); return; } the_div.visibility="visible"; if(th_div.left < -20) {the_div.left = parseInt(th_div.left)+20; the_div = setTimeout("visiDiv2()",15);} このようなものが動かすdivの数だけ増えてこんがらがってしまいます 何かもっと汎用性に優れている書き方などあれば教えてください。 おねがいします。
最近、Mac/Winのネスケ&IEの JavaScriptの挙動差に 悩まされているんだけど… ここは気をつけとけ、っていうポイントある? なんかいじってうるちに動いてみたり、止まったりで… いまいち傾向が読めないんだよね…。 誰か教えてプリーズ 一応使用ブラウザ: Win IE5.01 / NC4.76 / NC6.0 Mac IE5.0 / NC4.7
>>577 関数にIDを渡せばいいのでは。
<body onload="start();">
<script>
function start() {
if(document.getElementById || document.all || document.layers) {
visiDiv2("div1");
setTimeout("visiDiv2('div2')", 1000);
} else {
alert("このスクリプトはNN/IEの4.0以降でのみ動作します");
}
}
function visiDiv2(id) {
var the_div;
if(document.getElementById) the_div = document.getElementById(id).style;
else if(document.all) the_div = document.all(id).style;
else if(document.layers) the_div = document.layers[id];
the_div.visibility="visible";
if(parseInt(the_div.left) > 0) {
the_div.left = parseInt(the_div.left) - 20;
setTimeout("visiDiv2('" + id + "')", 15);
}
}
</script>
<div id="div1" style="position: absolute; top: 10; left: 400; visibility: hidden;">あいうえお</div>
<div id="div2" style=" position: absolute; top: 40; left: 400; visibility: hidden;">かきくけこ</div>
これって document.all.position_02.style document.all("position_02").styleのこと?
581 :
Name_Not_Found :01/09/18 22:33 ID:grznOqZY
>>577 こういうふうにオブジェクトを使って構造化ってのはどう?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
div { position: absolute; visibility: hidden; top: 200px; left: 200px }
</style>
<script type="text/javascript">
var suf = 'px';
if(document.getElementById) {
} else if(document.all) {
document.getElementById = function(id) { return document.all[id]; }
} else if(document.layers) {
document.getElementById = function(id) {
var e = document[id]; e.style = e; return e; }
suf = '';
} else {
window.alert('This script requies IE 4.x/Netscape 4.x or higher.');
}
function Div(id, xpos, ypos) {
this.id = id; this.elt = document.getElementById(id);
this.x = xpos; this.y = ypos; }
Div.prototype.setVisible = function(b) {
this.elt.style.visibility = b ? 'visible' : 'hidden'; }
Div.prototype.moveBy = function(dx, dy) {
this.elt.style.left = (this.x += dx)+suf;
this.elt.style.top = (this.y += dy)+suf; }
var d1, d2;
function init() {
d1 = new Div('d1', 200, 200); d1.setVisible(true);
d2 = new Div('d2', 200, 200); d2.setVisible(true);
d1.tid = setInterval(function() {
d1.moveBy(-5, 0); if(d1.x < 0) clearInterval(d1.tid); }, 50);
d2.tid = setInterval(function() {
d2.moveBy(0, -5); if(d2.y < 0) clearInterval(d2.tid); }, 50);
}
</script>
</head><body onload="init()">
<div id="d1">あいうえお</div>
<div id="d2">かきくけこ</div>
</body></html>
582 :
Name_Not_Found :01/09/19 00:29 ID:D0mWfU1M
>>578 Mac使ってないのであんまり役に立たないんだけど…
自分では、できるだけ標準化されてるものを使って、それがない
部分だけ個別に対応、というふうにしてます。まずブラウザ/OS
で枝分れしちゃうと分量が多くなって大変…
で、具体的にどういうとこが動かないんでしょう?
583 :
578 :01/09/19 06:59 ID:PYybyZcU
>>582 違うところだけ…なるほど。
参考になります。サンクスコ
> 具体的にどういうとこが動かないんでしょう
大した処理じゃないはずの、
window.open("./item.html", "witems");
こんな一行とか、
window.location="./item.html";
こんなのが Mac NC4.7で動かなかったりする。
昨日の段階では、どうも
"./item.html"の "./"指定が問題みたいで、
それを外すと動いてみたりするんだけど。
他のブラウザでは動く記述だけに、凄く困る。
その辺の挙動作にまで突っ込んである本とか資料ないかな。
多少高くても良いんだけど。
ソース付きならなお良し。
初心者本じゃこの辺のことには役に立たない。
大体 Windowsの話しか書いてないしね。
584 :
:01/09/19 09:48 ID:f6yPwWMo
577さん どうもありがとうございました これで何とかなりそうです。
585 :
577 :01/09/19 10:00 ID:f6yPwWMo
自分にお礼を書いてしまった 579 581さん どうもありがとうございました
586 :
578 :01/09/19 10:51 ID:hPrfUhls
587 :
Name_Not_Found :01/09/19 13:18 ID:D0mWfU1M
なんかMSIE6では「画面の解像度」を取れるようにしたみたい ですよ。 window.screen.deviceXDPI window.screen.deviceYDPI window.screen.logicalXDPI window.screen.logicalYDPI なんてのが増えたらしい。
588 :
Name_Not_Found :01/09/19 16:56 ID:.c8YVbOs
cookie
589 :
Name_Not_Found :01/09/19 16:59 ID:.c8YVbOs
ミスった・・・ cookieをチェックして初回訪問時だけ別ページに飛ばすという サンプルをどこかでチラっと見たのですが中身までおぼえてなくて。 どう書けばよいのでしょうか。
590 :
Name_Not_Found :01/09/19 17:42 ID:o15qnGsY
背景の画像は固定して、コンテンツだけスクロール出来るようにしたいのですが、教えていただけますか?
591 :
Name_Not_Found :01/09/19 17:44 ID:vgwmM2Lo
592 :
Name_Not_Found :01/09/19 17:46 ID:SWFoI/aY
>>590 IEなら<body>内に'bgproperties="fixed"'と書けば済みますけど。
>590 CSSなら background-attachment: fixed
594 :
577 :01/09/19 19:54 ID:f6yPwWMo
577です 今日一日考えていたのですが、 どうすれば limit_heightにも 適用できるかがわかりません <script type="text/javascript"> var limit_height = 300 function start() { if(document.getElementById || document.all || document.layers) { visiDiv2("div1"); setTimeout("visiDiv2('div2')", 100); } else { alert("このスクリプトはNN/IEの4.0以降でのみ動作します"); } } function visiDiv2(id) { var the_div; if(document.getElementById) the_div = document.getElementById(id).style; else if(document.all) the_div = document.all(id).style; else if(document.layers) the_div = document.layers[id]; the_div.visibility="visible"; if(parseInt(the_div.top) < limit_height) { the_div.top = parseInt(the_div.top) + 10; setTimeout("visiDiv2('" + id + "')", 15); } } </script> 質問ばかりしてすいません たすけてください。
595 :
Name_Not_Found :01/09/19 20:39 ID:jQH5WQV6
困ったな、プロキシ規制なのか普段つかってるマシンから書き込めない。
>>589 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
if(!document.cookie.match(/ABCDEF/))
window.location.href = '
http://www.yahoo.co.jp/ ';
document.cookie = 'ABCDEF';
</script>
</head><body>
<h1>Test...</h1>
</body></html>
596 :
Name_Not_Found :01/09/19 20:44 ID:PeRX/89M
>>594 オブジェクト使った方が動作を追加しやすいよ。使わない?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
div { position: absolute; visibility: hidden; top: 200px; left: 200px }
</style>
<script type="text/javascript">
var suf = 'px', ymax = 300;
if(document.getElementById) {
} else if(document.all) {
document.getElementById = function(id) { return document.all[id]; }
} else if(document.layers) {
document.getElementById = function(id) {
var e = document[id]; e.style = e; return e; }
suf = '';
} else {
window.alert('This script requies IE 4.x/Netscape 4.x or higher.');
}
function Div(id, xpos, ypos) {
this.id = id; this.elt = document.getElementById(id);
this.x = xpos; this.y = ypos; }
Div.prototype.setVisible = function(b) {
this.elt.style.visibility = b ? 'visible' : 'hidden'; }
Div.prototype.moveBy = function(dx, dy) {
this.elt.style.left = (this.x += dx)+suf;
this.elt.style.top = (this.y += dy)+suf; }
var d1, d2, d3;
function init() {
d1 = new Div('d1', 200, 200); d1.setVisible(true);
d2 = new Div('d2', 200, 200); d2.setVisible(true);
d3 = new Div('d3', 200, 200); d3.setVisible(true);
d1.tid = setInterval(function() {
d1.moveBy(-5, 0); if(d1.x < 0) clearInterval(d1.tid); }, 50);
d2.tid = setInterval(function() {
d2.moveBy(0, -5); if(d2.y < 0) clearInterval(d2.tid); }, 50);
d3.tid = setInterval(function() {
d3.moveBy(0, 5); if(d3.y > ymax) clearInterval(d3.tid); }, 50);
}
</script>
</head><body onload="init()">
<div id="d1">あいうえお</div>
<div id="d2">かきくけこ</div>
<div id="d3">さしすせそ</div>
</body></html>
597 :
Name_Not_Found :01/09/19 20:53 ID:M4vwvTrY
>>590 -593
やっぱりCSS使った方が何かといいよね。固定とスクロールと
切替えるようにしてみました。N6/Mozilla/IE5.5。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
body { background-image: url(test.png) }
</style>
<script type="text/javascript">
function setscr(s) {
document.getElementById('b1').style.backgroundAttachment = s;
}
</script>
</head><body id="b1">
<p><a href="javascript: setscr('fixed')">fixed</a></p>
<p><a href="javascript: setscr('scroll')">scroll</a></p>
<p>...</p>
<p>...</p>
<p>...</p>
...
</body></html>
598 :
Name_Not_Found :01/09/19 20:55 ID:M4vwvTrY
もしかしたらこのproxy規制が変わるまであんまり書き込めなく なるかも知れない。つまんないなー。
599 :
579 :01/09/19 21:19 ID:PisROpg6
600 :
Name_Not_Found :01/09/19 22:03 ID:mxMB2xQw
601 :
Name_Not_Found :01/09/20 08:37 ID:Mhlw1kmM
>>600 うーん、すごい。けど「ヘンなブラウザです」と言われてダメ ;_;
602 :
名無しさん┃】【┃Dolby :01/09/20 11:06 ID:NGnrqbnE
スライドショウをしたいのですが、そのたびに画像を読み込んでいると スライドどころじゃないので、前もって画像を読み込んでおきたいのです。 そこで今は単純に、そのスライドショウのページにリンクをはっている その前のページでこっそりめだたないように <img src="1.jpg" width=5> とかやっていたのですが、これをやると、そのページで必要なボタンのgifとかより先に この画像を読み込んだりしようとして、一見かたまったようになってしまいます。 そこで、ページの表示に必要なgif画像とかを先に表示させておいて、 裏で、あとのスライドショウで必要となるjpgをこっそり読み込んでおきたいのですが、 こういうのってのはjavascriptでは無理でしょうか? うまく説明できたかどうかわからないのですが、よろしくお願いします。
603 :
Name_Not_Found :01/09/20 11:31 ID:gmIBg5OA
>>602 試してないのでなんともいえませんが、
img = new Image();
img.src = "../img/btn.jpg";
で画像のキャッシュが出来るので、画像読み込み部分を関数化して、
HTMLファイルの終わりの方でその関数を呼び出すようにして
やれば裏で画像の読み込みが出来るのではないでしょうか?
<html>
<script language='javascript'>
function readImages(){
img = new Image();
img.src = "../img/btn.jpg";
}
</script>
<body>
〜
<script language='javascript'>
readImages();
</script>
</body></html>
604 :
名無しさん┃】【┃Dolby :01/09/20 12:40 ID:NGnrqbnE
>>603 ありがとうございます。
そこで、こんな感じにしてみました。
<html><head>
<script type="text/javascript">
<!--
function ClickImage1(index){
img = new Image();
img.src[0] = "2.jpg";
img.src[0] = "3.jpg";
}
//-->
</script>
</head>
<BODY>
<a href="suraido.html" onClick="ClickImage1(0)" target="new"><img src="botan.gif"></a>
<br>
<img src="1.jpg" width=5></BODY>
</html>
スライドで一番最初の画像だけはとりあえず元のページで読み込んでおいて、
残りはそのスライドのページが表示された時点で読み込み始めるように、と。
こんなのでうまくいくのかな?
これから試してみます。
605 :
Name_Not_Found :01/09/20 13:15 ID:7sVy3fz6
>>604 画像の数が多い場合(10とか20とか)、一斉に先読みすると
サーバに負荷が掛かるし失敗する可能性が増えますよね。
常に2つずつ先読みし、先読みできている画像までしか進め
ないように「次」ボタンを制御してみました。いくつ読めた
か表示するおまけつき。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var isrc = ['i1.png','i2.png', ...]; // 20個くらいまでテスト済み
var imgs = new Array(isrc.length), count = 0, cur = 0;
function cache1() {
for(var i = 0; i < isrc.length; ++i)
if(imgs[i] == null) {
imgs[i] = new Image(); imgs[i].src = isrc[i];imgs[i].onload = loaded1; return; }
}
function loaded1() {
document.getElementById('h1').childNodes[0].data = ++count; cache1();
}
function prev() {
if(cur > 1) document.images[0].src = imgs[--cur].src;
}
function next() {
if(cur+1 < isrc.length && imgs[cur+1] != null && imgs[cur+1].complete)
document.images[0].src = imgs[++cur].src;
}
</script>
</head><body onload="cache1(); cache1()">
<h1 id='h1'>0</h1>
<form action="#"><p>
<input type="button" onclick="prev()" value="Prev">
<input type="button" onclick="next()" value="Next"></p></form>
<p><img id="i1" src="i1.png" alt="an image"></p>
</body></html>
げげ、「cur > 1」ではなく「cur > 0」だ、スマソ。
607 :
名無しさん┃】【┃Dolby :01/09/20 14:17 ID:NGnrqbnE
>>605 -606
ありがとうございます。
そこでなんですが、私の目標としているものというのが、
別ウインドウで、タイマーでコントロールしながら
自動的に画像をスライド表示していくものなんです。
前もって呼び出し元のほうで、画像をある程度読み込んでおけば、
残りはスライドがタイマーで切り替わる時間までの間に、
読み込めればいいかなと思っていたのです。
そこで前もって画像を読み込む時もタイマーでcompleteでチェックしながら
OKになったら次を読むというふうに、
>>605 を参考にして
スライドショウのタイマーとは別のタイマーでコントロールさせたいのですが、
どうもうまく組めません。
うまく説明できないかもしれないんで、もう少し自分でも考えてみます。
>>607 いや、意味はよく分かりますよ。あんまり細かく制御
してもしかたないですよね。たとえば
>>605 のcache1()
をまず2回くらい呼んで、あとはsetInterval()で定期的に
呼ぶ、chache1()の中でonloadハンドラを設定していると
ころは削除、くらいでどうでしょう。
今日も質問がとだえてるので、「テーブルの中を画像が歩く」っていう 例題を作ってみました。なんかMozilla 0.94にバグがあるのでちょっと よけたりして。なぜかonloadの中身が2回実行されているみたい…不思議。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html><head><title>???</title> <style type="text/css"> th, td { width: 50px; height: 50px } </style> <script type="text/javascript"> var tbl = null, img = new Image(), xpos = 5, ypos = 5; function init() { if(tbl != null) return; tbl = document.getElementById('t1'); for(var i = 0; i < 10; ++i) tbl.insertRow(i); for(var i = 0; i < 10; ++i) for(var j = 0; j < 10; ++j) tbl.rows[i].insertCell(j); img.src = 't1.png'; tbl.rows[ypos].cells[xpos].appendChild(img); setInterval(walk, 1000); } function walk() { tbl.rows[ypos].cells[xpos].removeChild(img); if(Math.random() > 0.5) ++xpos; else --xpos; if(xpos < 0) xpos = 0; else if(xpos > 9) xpos = 9; if(Math.random() > 0.5) ++ypos; else --ypos; if(ypos < 0) ypos = 0; else if(ypos > 9) ypos = 9; tbl.rows[ypos].cells[xpos].appendChild(img); } </script> </head><body id="b1" onload="init()"> <table id="t1" border="2"></table> </body></html>
610 :
Name_Not_Found :01/09/21 00:40 ID:CLvpyOUU
<script type="text/javascript"> <!-- function divScroll(){ if(document.all('divs').style.pixelTop>0){ document.all('divs').style.pixelTop-=3; } timerID=setTimeout('divScroll()',100); } function divScroll2(){ if(document.all('divs').style.pixelTop<100){ document.all('divs').style.pixelTop+=3; } timerID2=setTimeout('divScroll2()',100); } //--> </script> </head> <body> <a href="#" onMouseOver="divScroll()" onMouseOut="clearTimeout(timerID)">↑</a><br> <a href="#" onMouseOver="divScroll2()" onMouseOut="clearTimeout(timerID2)">↓</a> <div id="divs" style="position:absolute;top:50px;">「実現して下さい」って・・・</div>
つうか、そのページ Div の absolute でガチガチじゃん。 何がインラインフレームだ、この野郎!いっぺんソース見てから質問しろ
613 :
名無しさん┃】【┃Dolby :01/09/21 09:47 ID:qOlKZ7fY
すみません。スクリプトエラーになってしまいます。 Imgsの使い方が悪いのでしょうか? var Imgs=new Array() Imgs[0]="0.jpg" Imgs[1]="1.jpg" var cnt1=0 var cnt2=2 function anime(){ cnt2++; Imgs.src[cnt2]=cnt2+".jpg"; if(cnt1>=1){ document.asoko.src=Imgs[cnt1]; }else{ document.asoko.src=Imgs.src[cnt1]; } cnt1++; } function hajime(){ setInterval('anime()',100); } こういう使い方って、ダメでしょうか?
614 :
Name_Not_Found :01/09/21 10:38 ID:mbehbUaI
またproxy規制で普通にやってると書けない…欝だ…
>>613 どこがどういうエラーになってるかくらい調べるべきですよー。
IEのスクリプトデバッガ使うかN6/MozillaでJavaScript
コンソールを開いて調べてください(後者をおすすめ、とっても
使いやすいです)。
しかしImgs.src って配列なの???配列はImgsなんだから
Imgs[添字].src なんじゃないの?
615 :
名無しさん┃】【┃Dolby :01/09/21 11:10 ID:qOlKZ7fY
>>614 申し訳ありませんでした。
どうやら、やっぱりImgsの使い方がダメなようです。
添字の0と1のときはアドレスで、それ以降は、ソースを持たせようとしたのですが
やっぱりこういう使い方というのはダメなのでしょうか?
616 :
Name_Not_Found :01/09/21 11:21 ID:M7eRxt0M
>>615 >どうやら、やっぱりImgsの使い方がダメなようです。
>添字の0と1のときはアドレスで、それ以降は、ソースを持たせようとしたのですが
>やっぱりこういう使い方というのはダメなのでしょうか?
Imgs[n] に 色んな意味(アドレスとかソース)を持たせるのはダメダメ
です。せめて
Imgs1[n]
Imgs2[n]
ぐらいにすべきです。
というか、
Imgs[0] = new Image(); Imgs[0].src = "0.jpg"; じゃなぜだめなの?
あと、Imgs.src[cnt+1] を Imgs[cnt+1].src に変更するとしても、
Imgs[cnt+1] = new Image() って初期化しなきゃ。
617 :
名無しさん┃】【┃Dolby :01/09/21 11:26 ID:qOlKZ7fY
var Imgs=new Array()の内容を途中からImage()にするって できないですよね、バカでした。
618 :
e :01/09/21 11:57 ID:eN.imCiU
すいません、教えてください ナビゲーションウィンドウを出しているときに、親ウィンドウのほうでリンクにクリック した時に、ナビゲーションウィンドウが親ウィンドウの後ろに隠れてしまいます。 これを、後に隠れたら前に出すという事は出来るのでしょうか? 教えてください。
619 :
Name_Not_Found :01/09/21 12:03 ID:K4LgTbgs
>>618 ちょっと試してないですが、ウィンドウオブジェクトの
メソッドfocus()とか、IEのみだけどsetActive()とか
使ったら前に出ないかな。ずばり「前に出す」というのは
手元の本では見当たらない…
>>612 >何がインラインフレームだ、この野郎!
ワラタ。この野郎って(藁
>>618 サブウィンドウ側で
<body onLoad="setInterval('window.focus()',1000)">
とすれば、1秒事に前に出て来るさ。
でもあんまりオススメではない。
結構ウザイよ、これ(藁
621 :
名無しさん┃】【┃Dolby :01/09/21 12:22 ID:qOlKZ7fY
どんなに理由があっても 別ウインドウをいちいち開かせるようなホームページへは 行きたくない。
>>622 うん、onBlurがいいんだけど、マカーには通用しないんだよね・・・
ま、奴ら放置なら構わんが。
624 :
e :01/09/21 13:37 ID:KmswMoww
ありがとうございます。 <body onLoad="setInterval('window.focus()',1000)"> でできました
625 :
Name_Not_Found :01/09/21 14:06 ID:K4LgTbgs
>>621 激しく同意…といいたいとこだが、2ちゃんねるでも
沈んでいるスレって別ウィンドウで開くよね。
626 :
ミッション! :01/09/21 14:19 ID:wntYznEM
perlもつかえるジャバラーに課題。 perlでいう、暗号化、つまりcrpt()なんだが。 これをJavaScriptで実現できないものだろうか。 制限は一切なし。どのような方法をつかっても構わない。 ただし、結果がperlでのcrypt()と同じ結果になることが絶対条件だ。 健闘を祈る(w
627 :
Name_Not_Found :01/09/21 14:40 ID:K4LgTbgs
>>626 実現はできるよ。でもめんどいからやりたくないな。
探せばどっかにあるんじゃない?
ジャバラーって何や。ジャバスクリプター、でしょ?
>>627 オライリーから出ているJavaScript の本にやりかた書いてあったような。
>>610 のページは某雑誌のナビゲーションの使い方の例として出ていました。
悪い例としてだけどもね
630 :
Name_Not_Found :01/09/22 04:27 ID:2isEqOAI
「指定した文字を、指定した数だけ連ねた文字列」を返す 関数を作ろうと思うのですが、 ループで回すのは遅い気がして… 何か画期的な書き方はないでしょうか?
今更ながらちょっと気になったんだが、このスレに住んでるみんなは何系のサイトやってんの? まさか素材屋とかじゃないよね?
632 :
Name_Not_Found :01/09/22 05:24 ID:fTA3isLE
>>630 こんな感じでいいの?for構文使っちゃったけど。。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<title>test</title>
<script type="text/javascript">
String.prototype.duplicate = function(n) {var s = ""; for (var i=0; i<n; i++) s += this; return s;}
</script>
</head>
<body>
<a href="javascript:alert('あぽーん'.duplicate(2))">'あぽーん'.duplicate(2)</a><br>
<a href="javascript:str='ワショーイ'; alert(str.duplicate(3))">str='ワショーイ'; str.duplicate(3)</a><br>
</body>
</html>
633 :
632 :01/09/22 05:27 ID:fTA3isLE
すんません、Mozillaでしか動かない。。。なぜ?
>>633 組み込みオブジェクトStringのprototypeにメソッド追加するっていう
のはちょっと危うい感じがするよねえ。ECMA-262規格の上では禁止され
てはいないように思えるけど(ちょっと眺めただけ)。
やっぱ、単独の関数にしたらー。
636 :
632 :01/09/22 10:46 ID:0SuC1KWc
ええと、実は日本語の文字列だと文字化けするということを言いたかったんです。初歩的なところですんません。。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=shift_jis">
<title>test</title>
<script type="text/javascript">
function dpl(str) {return str;}
</script>
</head>
<body>
<a href="javascript:alert(dpl('あぽーん'))">あぽーん</a><br>
</body>
</html>
↑これを実行するとMacIE5.0では戻り値が「? ??」になってしまうのです。
何かいい改善策はないものでしょうか?
(
>>630 氏、すまぬ)
>>636 文字コードをUTF-8にするとうまくいくよ。
638 :
Name_Not_Found :01/09/22 14:53 ID:sNuAwgj6
639 :
Name_Not_Found :01/09/22 17:26 ID:.fRBuy4s
>>637 あんましUTF-8にしたくないでしょー。別案としては、日本語文字
を全部「'\uxxxx\uxxxx....'」の形で書くという手がありますね。
プログラムはあんまり読みやすくないけど…
640 :
Name_Not_Found :01/09/22 17:41 ID:.fRBuy4s
>>638 この日記のページのスクリプト、あなたが書いたの?IEとN4のどっ
ちか決め打ちみたいだけど。IEも古いの用かも知れない(手元の
スクリプトデバッガだとうまく入れないのでわからん)。
捨てて書き直した方が吉のような…これのデバッグをまじめにや
る気あるの?
641 :
638 :01/09/22 18:21 ID:iiIg5mvM
>>640 日記も掲示板もレンタルです。
要するに、今のIEのバージョンと相性が合わないということですか?
642 :
Name_Not_Found :01/09/22 20:10 ID:/kgFSVzo
俺が、638を初心者用スレッドから誘導してきた張本人です。 どうやら、『ホームページ製作王』なるアプリケーションの吐く JavaScriptがエラーを起こしていたようなので、このスレを奨めました。 あのアプリケーションは悪名高いですからね。 俺だったら、country1_022.htm中にある、 不定期日記と掲示板の個所の OnMouseOver="〜"とOnMouseOut="〜"を 真っ先に消してみるけど。どうよ?
>>626 crypt()は作れるけど、どう使いますか?
644 :
Name_Not_Found :01/09/22 21:23 ID:xavEGrj.
>>642 文字の上にマウスがくると色が変わるようにしたいんだったら、
スクリプトを使わないでスタイルシートでやったらいいじゃん。
>>645 そうしないのが、ホームページ製作王の「威力」なのでしょう。
あとは、本人で無いので、なんとも。
647 :
Name_Not_Found :01/09/22 21:50 ID:Lu1TPMyQ
>>644 はい、ECMAでもいかんというところはないようです。うまく
行かないというので危ういのかなと思っただけですが、それは
全然別の話だったのでOKなんでしょう。
648 :
632 :01/09/23 02:05 ID:FKAsqXWM
>>638 ,
>>641 アクセス拒否のエラーが発生しているという話だと思うんですが
これは右フレームに別ドメインのページ(この場合は日記と掲示板)を
読み込んだ後、再び右ページにjavascriptでアクセスしようとすると
発生します。セキュリティ上の問題からjavascriptではこのようなアクセスは
禁止されています。
リンクの色を変えたいというだけであれば
>>645 のとおり
スタイルシートを使えばいいと思いますよ。あと、ここで質問をするときはサンプルのソースを載せるなどしたほうが
いいですね。自分のページを見せられて、「サア、ドコガワルイカ!」
と聞かれてもちょっとこまるので。。
文字列の件、みなさんサンクス。
>>630 はこれでいいのかな?日本語の操作に関しては問題ありだけど。
649 :
Name_Not_Found :01/09/23 02:11 ID:S8bKVJfE
メインウィンドウからサブウィンドウを開き、 サブウィンドウでメインウィンドウのリンクを操作したいのですが メインウィンドウがフレームの場合、普通にサブウィンドウに、 <a href="javascript:ctrl_wind('../../set1_2.html')">link</a> と記述すると、サブウィンドウを呼び出した時のフレームにしかset1_2.htmlを 表示しません。 これを1フレームだけじゃなくて画面全体(target="_blank"のような効果)で set1_2.htmlを表示させるにはどうすればよいでしょうか、、?
650 :
649 :01/09/23 02:16 ID:S8bKVJfE
すいません、 >これを1フレームだけじゃなくて画面全体(target="_blank"のような効果)で _blankではなく_topの誤りでした、、 よろしくお願いします。
651 :
:01/09/23 07:22 ID:Hji7URW.
frame自体はparentを付けることで一つ上の階層を
topを付けることで一番上を指すことができます。
だから
window.opener.parent.location.href = '
http://www.2ch.net/ ';
または
window.opener.top.location.href = '
http://www.2ch.net/ ';
とすればよい。
top/parentの代わりにtop.frame[1]とかparent[2]とかすれば
任意のフレームに対して指示することになります。
つーわけでctrl_wind内を適当にいじってくださいな
652 :
649 :01/09/23 10:15 ID:wW2stj/g
>>651 さん
ありがとうございます。
window.opener.top.location.href = '
http://www.2ch.net/ ';
にして、
<a href="javascript:ctrl_wind()">link</a>
にしたらうまく_topにすることができました。
653 :
Name_Not_Found :01/09/23 20:13 ID:.WVeiDnk
>>3 パスワードをソース覗いても分からなくする方法で、
飛ばす先のHTMLファイルの名前をパスワードにするというのが
本に書いてあった。
多分こう。タブン。。。 <script type="text/javascript"><!-- function itteyoshi(){ var pro=prompt("パスワードを挿れなさい",""); location.href=pro+".html"; } //--></script> </head> <body> <a href="#" onClick="itteyoshi()">隠し頁</a>
655 :
Name_Not_Found :01/09/24 01:04 ID:sJHavlUg
難しい話をしているところを恐縮なんですが、文字を一文字ずつタイプみたいに表示するやり方を教えてください。
動作確認IEだけ <head> <script type="text/javascript"><!-- var mojiretsu="みんな大好き。モナータン。"; var cnt=0; function test(){ var submoji=mojiretsu.substring(0,cnt++); document.all("posi").innerHTML=submoji; setTimeout("test()",500); } //--></script> </head> <body onLoad="test()"> <div id="posi"></div>
657 :
Name_Not_Found :01/09/24 18:35 ID:T17RAjWs
658 :
Name_Not_Found :01/09/24 22:15 ID:bB/tjcrk
どうしてもうまくいかないんでアクセス毎に画像を変える方法を教えてください。
>>658 しつこいくらい既出なので、
過去ログ読んで下さい。
660 :
Name_Not_Found :01/09/24 22:49 ID:bB/tjcrk
>>659 量が多いのでどのあたりに書いてあるかだけでも教えていただけないでしょうか?
661 :
Name_Not_Found :01/09/24 22:59 ID:pFL2VsgY
>660 ログ表示して、「編集」→「このページの検索」をしなさい。 人に聞く前に、探す方法くらい自分で考えなさい。
662 :
Name_Not_Found :01/09/24 23:04 ID:bB/tjcrk
>>653 -654
vol.3の900以降で既出ね
664 :
Name_Not_Found :01/09/25 03:04 ID:8hetvPOc
JavaScriptで、変数やプロパティのポインタだけ渡して、 関数の中でその値を設定する、なんてことは できぬでしょうか?
665 :
664 :01/09/25 03:25 ID:8hetvPOc
666 :
Name_Not_Found :01/09/25 03:47 ID:8hetvPOc
632さんが、組み込みオブジェクトStringに メソッドをインプリメントしていますが、 レイヤには同じようなことはできないのでしょうか。 IEで、NNのmoveToみたいなメソッドを作りたいのです。
667 :
Name_Not_Found :01/09/25 09:18 ID:qMZhNGBY
>>664 -665
変数とは何らかのオブジェクトのプロパティですから、変数への参照と
プロパティ名をペアで持てばいいのかな。しかし2つの値を持ち歩きた
くないですよね。とすると、そのペアを保持するオブジェクトを用意する。
function Pointer(o, p) { this.obj = o; this.prop = p; }
Pointer.prototype.put = function(v) { this.obj[this.prop] = v; }
Pointer.prototype.get = function() { return this.obj[this.prop]; }
なんてどうですかね。ただ、局所変数は格納してるオブジェクトを取得
できないのでダメですけど。
668 :
Name_Not_Found :01/09/25 09:22 ID:m.iGTfvM
>>666 別に作ればいいだけだと思うけど…ただ、既にあるものと
衝突しないためには直接そのオブジェクトにメソッドを
増やすより、レイヤなりを中で保持する新しいオブジェクト
を定義する方が安心でいいと思うんですが…
669 :
ナウシカ :01/09/25 11:00 ID:zYYK145k
<BODY onLoad="select_menu()"> <table id="t1" border="1" width="160" height="75"> <tr><td></td><td>たたかう</td></tr> <tr><td></td><td>まほう</td></tr> <tr><td></td><td>アイテム</td></tr> </table></BODY> <script type="text/javascript"> function get_keycode() { switch (event.keyCode) { case 37:alert("うしろへ下がる");break; case 38:select_menu("up");break; case 39:alert("ぼうぎょ");break; case 40:select_menu("down");break; default :break; } } document.onkeydown = get_keycode; var count = 0,tbl = document.getElementById("t1"); var child = tbl.childNodes[0].childNodes; function select_menu(evt) { if(evt=="up") {if(--count<0)count=child.length+count;} else if(evt=="down") {count=++count%child.length;} for (var i = 0; i<child.length; i++) {child[i].childNodes[0].innerHTML = "";} child[count].childNodes[0].innerHTML = "<img src='a.gif'>"; } </script> </HTML>
670 :
ナウシカ :01/09/25 11:07 ID:zYYK145k
>>669 において
テーブルを青くして
枠と文字は白く表示して
たたかうを選択してキーボードのAを押すと
a.htmに飛び(Aしか認識しないようにする)
まほうを選択してキーボードのBを押すと
b.htmに飛び(Bしか認識しないようにする)
アイテムを選択してキーボードのcを押すと
c.htmに飛び(cしか認識しないようにする)には
どうしたらいいでしょうか?
だれか教えてください。
671 :
Name_Not_Found :01/09/25 11:17 ID:.1YFtAxI
>>670 テーブルを青くとかはCSSでやってよね。スレ違いということで。
たたかう/まほう/アイテムのどれが選択されているかは変数count
に入っているわけじゃない。だから、キー押された時に現在は上
下左右の矢印だけ取ってるけど、加えてA、B、Cも取るようにして、
それぞれについてifでそれを認識していいかどうか判定すればいい
んでは。全部代りに書けというのはパスだな。
672 :
Name_Not_Found :01/09/25 11:26 ID:.1YFtAxI
>>657 推薦書籍スレにも同内容で書かれていますが関係者の方ですか(w
せっかくだから本屋で立ち読みして来ました。一般のWebサイトから
題材を取って来て解説するというスタイルは具体性があってヨイです
よね。ただ、これでプログラミング初めてという人がJavaScriptで
バリバリ書けるようになるもんなんでしょうか。
あと、このスレあたりで一番問題になるとこですが、Dynamic HTMLの
水準がN4/IE4.xレベルの解説になってますね。CSSなんか出てこないし
動かすものは全部divだけという方針?やっぱりDOM2とかそれを使って
CSS2を操作するとか、今から読む本だったらそういう話題前提で行って
欲しい気がするわけです。立ち読みなんでよく読めてないとこがあれば
ご勘弁ください。以上。
673 :
Name_Not_Found :01/09/25 15:25 ID:ASsdDiO2
親画面からwindow.openで子画面に開くスクリプトを作ってますが、 親画面をリロードすると子画面が複数できてしまいます。 ネスケでは最初に開いた子画面に上書きされるのですが、IE5.0sp1(5.00.3103.1000) だと子画面が複数起動してしまいます。 ソースは popup = window.open("xxx.html", "subwin")な感じです。 BODYタグのonLoadで開いた画面を消そうと <BODY onLoad="popup.close()"> としてみましたが、これだと子画面(popup)がないときにエラーとなってしまいます。 どなたかいい案をお持ちでしたらアドバイスをお願いします。
674 :
Name_Not_Found :01/09/25 15:30 ID:fE3wXUtI
>>672 ありがとうございます。
立ち読みしてよさげな感じがしたのですが
詳しい人から見てどうなのか気になり訊いてみました。
関係者じゃないです。あっちのスレは無反応なので・・・
675 :
Name_Not_Found :01/09/25 16:01 ID:ju6/akoU
>>673 うーん、おかしいですね?IE 5.5で試してみましたが2つできたり
はしませんよ。ちょっと簡単化したソースを貼ってみませんか。
しかしIE 5.0の問題ってことかなあ。5.0持ってないんで…
いちばんありそうな問題はwindow.open()の第2引数が指定されてい
ないことですが、ちゃんと指定してあるんですよね?
676 :
ac.isogo-th.ed.jp :01/09/25 16:14 ID:iNAHDbRY
JavaScriptはクソ うざい 氏ね!ダァーホウ おまえつんぼか!めくらか!えた非人めが ヒッキ―童貞 金髪画像でオナニーでもしてろ 非国民
677 :
Name_Not_Found :01/09/25 17:57 ID:.3i.MgNs
678 :
Name_Not_Found :01/09/25 20:54 ID:M3.C2LiM
占いを作ろうとしたんですが画像が出ないんんです。 ソースは <SCRIPT language="JavaScript"><!-- myImageCnt = 5; myImage = new Array( "newimage1daikichi.gif", "newimagekichi.gif", "newimagechuukichi.gif", "newimagesuekichi.gif", "newimagekyou.gif" ); myRnd = Math.floor(Math.random()*myImageCnt); document.write("<img src='",myImage[myRnd],"' border='0' >"); // --></SCRIPT> どこが悪いのか教えてください。
679 :
Name_Not_Found :01/09/25 21:10 ID:ewsVlt32
>>678 そゆときは、document.writeする文字列から「<」「>」を
削って何が表示されるか見て見ませんか?
680 :
Name_Not_Found :01/09/25 21:20 ID:M3.C2LiM
>>679 画像じゃなくて
img src='newimagekyou.gif' border='0'
とか表示されてる。なぜ絵が出てこないんだろう・・・。
681 :
Name_Not_Found :01/09/25 21:28 ID:3XC0g5JI
>>680 それで両側に「<」と「>」をつけたら正しいimgタグになって
ますよね。ファイル名も合ってるのね?だったらそれでうまく
行きそうなもんだけど…
682 :
Name_Not_Found :01/09/25 21:36 ID:M3.C2LiM
>>681 ファイル名もばっちり合ってるんですが・・・×出る(鬱
もうお手上げです。しかし諦めきれない〜!!
文字列の連結をカンマじゃなくて+でやってみたら?
684 :
Name_Not_Found :01/09/25 21:53 ID:M3.C2LiM
>>682 だめでした・・・。
もしかしたら画像自体悪いのかもと思って別の場所に貼り付けたら
ちゃんと写るし。もうわけわかりません。
>684 ちゃんと動いたよ.ファイル名かパスが間違っているとしか思えないけど. とりあえず ・document.write だけにして画像が見えるか確かめる ・MyImageCnt を 1 にして最初の画像が見えるか確かめる ・MyImageCnt を増やしていって… という手順で確認してみるのがいいんじゃない? あと,Random じゃなくて for で回してみるとか
( ´,_ゝ`) 〜 Getcookieのやり方教えて頂けませんでしょうかお願い致します。
688 :
666 :01/09/26 03:54 ID:2pIYylm2
>>668 具体的にはどうすればいいんでしょう。
Stringのように、それにインプリメントすれば、全てのStringオブジェクトで
メソッドが使えるようになるような
「大元の型」が、
レイヤの場合にもあるんでしょうか?
いやある?んでしょうけど、説明書を見ても、
書き方が分からないんです。
あと、新しいオブジェクトを作ってメソッドを追加するやり方も教えて頂けたら
嬉しいです。
よろしくお願いします。
689 :
Name_Not_Found :01/09/26 07:17 ID:D0TNaEP6
>>686 document.cookieというプロパティを読むだけだよん。
ちなみにセットするにはこのプロパティに格納するだけ。
もっと具体的にやりたいことがあるんなら具体的に質問
しないとね。
690 :
Name_Not_Found :01/09/26 07:50 ID:FlepEObY
>>688 DOM的にはHTMLElement.prototypeに追加すればいいはずで、N6/Mozilla
ではそれでちゃんと動作する。しかしIE5.5はダメですねえ。なので、その要素
を最初に取り出した時にそのオブジェクトにセットする方が無難。別のオブジェ
クトを用意した方がやっぱりいいと思うけどそれはひどくガイシュツだから。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var d1;
function init() {
d1 = document.getElementById('d1');
// N6/Mozillaでは次の行はHTMLElement.prototype.moveto=でもOK
d1.moveTo = function(x,y) {
this.style.left = x + 'px'; this.style.top = y + 'px'; }
if(window.addEventListener) {
window.addEventListener('mousedown', hN6, true);
} else if(document.all) {
document.onmousedown = hIE;
}
}
function hN6(e) { d1.moveTo(e.pageX, e.pageY); }
function hIE() {
window.alert(window.event.clientX + ':' + window.event.clientY);
d1.moveTo(window.event.clientX, window.event.clientY); }
</script>
</head><body onload="init()">
<div id="d1" style="position: absolute">Test...</div>
</body></html>
>>690 > DOM的にはHTMLElement.prototypeに追加すればいいはず
HTMLElement はコンストラクタじゃないから
それで動作するのは Mozilla/N6 の独自実装かと思ってたんだけど、
DOM 的には OK なの?
692 :
Name_Not_Found :01/09/26 16:05 ID:1C1t8NLU
<a href="
http://* (jpg|gif)" target=_blank>
http://* (jpg|gif)</a>
これを
<a href="
http://* (jpg|gif)" target=_blank> <img src="
http://* (jpg|gif)"> </a>
http://* (jpg|gif)
こういう風にjavascriptで置換したいんだけどどうすればいーのでしょう?
proxomitronの
Name = "2ch image viewer"
Active = TRUE
URL = "(*2ch*|www.bbspink.com)/test/read.cgi|*jbbs.net/*/bbs/"
Limit = 150
Match = "(
http://\w. (gif|jpg))\1</a>"
Replace = "<img src="\1" alt="\1"width=256 border=0></a><BR>"
"\1"
をjavascriptでやりたいのです
693 :
Name_Not_Found :01/09/26 17:32 ID:PBQ/9qJY
document.body.innerHTML = document.body.innerHTML.replace(/(<a href="
http:\/\/\.* (jpg|gif)" target="_blank">)(
http:\/\/\.* (jpg|gif))<\/a>/g,'$1<img src="$3"></a>');
とか。
動作確認していないので適当に修正してください。
694 :
686 :01/09/26 19:14 ID:ovoWrrNc
あわわ、ありがとうございます
>>687 >>689 本題はクッキーのURLアンエスケープなんです、2chのような板を書いている
のでCGI吐き出しのJavaスク受け取りになるんですが、その時エンコードすると
一部のブラウザで表示が化けると言う事を聞きました
2chでヤバ文字が使えないのは、これを避ける為にあえて
エンコードしてないからと思うんですが(勿論カンマなどは化けてしまう)
どう言う組み合わせでアンエスケープ時の文字化けが起こるのかが分からないのです
なるべくならエスケープしておきたいものですから・・・
695 :
Name_Not_Found :01/09/26 23:00 ID:byN1zn5k
右フレームと左フレームに分け、右フレームの画像をクリックすると 左フレーム内の<div>タグに囲まれたテーブルを非表示→表示する JavaScriptが書きたいのですが、どうも上手くできません。 上手くいかないのは以下の部分です。何がおかしいのでしょうか。 右フレーム document.right_frame.my_table.display = "block"; 左フレーム <div id="my_table"> 〜略〜 </div>
696 :
Name_Not_Found :01/09/27 00:40 ID:xPF4nQK.
時間帯によって背景が変わるようにしたいのですができません。 何が間違ってるのでしょうか。 <SCRIPT LANGUAGE="JavaScript"> <!-- myTime=(new Date()).getHours(); if(myTime>=5 && myTime<10){ myBack="haikei1.png"; }else if(myTime>=10 && myTime<17){ myBack="haikei2.png"; }else if(myTime>=17 && myTime<23){ myBack="haikei3.png"; }else if(myTime<5 || myTime>=23){ myBack="haikei4.png"; } document.write("<body background='"+myBack+"'>"); //--> </SCRIPT>
697 :
688 :01/09/27 02:12 ID:s0ZsdbmI
>>690 ありがとうございました。
既出とは596あたりのことですね。
これらをよく見て、よく考えてみます。
698 :
Name_Not_Found :01/09/27 02:36 ID:NEc6RyOY
699 :
Name_Not_Found :01/09/27 03:31 ID:WVqspsPM
質問です。 HPの引越しの際によくある「○秒後に移動します」というのは どうやるのでしょうか? また、技の名前はあるのでしょうか? 紹介されているHP等がありましたら、もし良かったら、 教えてください。
700 :
Name_Not_Found :01/09/27 03:36 ID:mkcr7eqQ
>>699 それはふつうはJavaScriptではやらないよ。JavaScriptでもできるけれど。
方法は、
<META HTTP-EQUIV="refresh" CONTENT="秒数;URL=移動先のURL">
こんな感じ。移動先のURLを省略すれば自動リロードに。
701 :
Name_Not_Found :01/09/27 03:40 ID:WVqspsPM
>>700 699です。
おー、なるほど!
ありがとうございます。
702 :
Name_Not_Found :01/09/27 03:49 ID:io6xmHB2
JavaScriptの解説サイトは結構見つかりますが、DHTMLの初心 者向け解説サイト(日本語サイト・リファレンスもついているとカナ リウレシイ)って、探し方がわるいせいか見つけられません。 でも、DHTMLで使うJavaScriptって普通のJavaScriptリファレ ンスには載っていないので困ってます。 どこかに、いいサイトはないでしょうか?
>>694 意味がわからん
>>695 parent.left_frame.document.getElementById("myTable").style.visibility="visible";
>>696 間違ってないと思うけど...
>>702 あなたの言う「DHTML」とはどーゆー定義ですか?
704 :
694 :01/09/27 04:08 ID:UW/rqplg
>>703 クッキーには大小英字と数字しか使えないんですよ、ホントは
(実はそうでもないんですけど・・・)
で、それ以外の文字を食べさせたい時は%**みたいにエンコード
しないといけないんですが、CGIでエンコードされたクッキーを
セットしてJavaスクでそれをデコードすると
文字化けが起きるらしいのです。
2chのメール欄に , 何かを使うと書き込み語のフォームがぶっ壊れる
のはエンコードしてないからだと思うんですが
それをあえてやらない理由のは上記の問題からなんです
で、どんな状態でそういう症状が出るのかが知りたいのです。
705 :
694 :01/09/27 04:14 ID:UW/rqplg
ああ誤字だらけ、 書き込み語 => 書き込み後 理由のは => 理由は ねよう。。
>>704 cgi又はjsどちらかでエンコード、デコードを統一するのはだめなの?
707 :
694 :01/09/27 04:19 ID:UW/rqplg
>>706 ありがとう、えっと書いてるのはHTML吐き出しの掲示版なので
GetはHTMLで行うしかないんです。。。
と言う事はSetをJsでしないといけないのか。。。難しそう
708 :
694 :01/09/27 04:20 ID:UW/rqplg
まただ、すいません GetはHTML => GetはJavascript ねよ
709 :
702 :01/09/27 05:41 ID:qPkPVilE
>>703 うっ!ひょっとして略し間違ってるでしょうか・・・ダイナミック
HTMLです。スタイルシートやレイヤーをJavaScriptで、どーこ
ーしたいのです。
710 :
Name_Not_Found :01/09/27 07:53 ID:oZ38FtZ.
>>703 ありがとうございます。さっそくやってみます。
>>696 スクリプトでbodyタグ吐き出すのはまずいでしょ。
スタイルシートいじるとか、属性値を変更するとかしないと。
712 :
ナウシカ :01/09/27 11:36 ID:vF3UMtZI
おねがいします。 かなり悩んだけど、うまくいかないので だれか、ソース教えてくれませんか?? あまえてすいません。・・・・・
713 :
kumi :01/09/27 12:53 ID:ry84gZ.I
java script初心者です。 教えてください。 チェックボタンがたくさん設置します。それで、チャックされたところだけ 消去(表示がなくなる)される、というようにしたいのですが教えてください。 よろしくお願いします。
714 :
Name_Not_Found :01/09/27 13:01 ID:b8yaOcFs
>>713 チェックボタン自身が消えるってこと?不便そうだけど。
#チャックって・・・
715 :
kumi :01/09/27 13:04 ID:ry84gZ.I
書き方が変ですみません。 チェックボタンが消えるのではなく、そのチェックされた項目がなくなって表示したいのですが・・・。
716 :
Name_Not_Found :01/09/27 14:15 ID:/3ezWBNY
717 :
kumi :01/09/27 14:34 ID:ry84gZ.I
わっけわからん。この掲示板。最悪。まぁ、わかっとったことやけどな。2ちゃんねるの掲示板でまともに返事が返ってきたことがないかならぁ。
718 :
kumi :01/09/27 14:36 ID:ry84gZ.I
ちゃんと、質問しとった私が馬鹿やったわ。
>>717 みんなレベル低いからしかたないよ。
正直、Googleで調べた方がいいよ。
720 :
714 :01/09/27 15:12 ID:b8yaOcFs
721 :
696 :01/09/27 16:35 ID:xPF4nQK.
遅くなってすいません。間違ってないと思うんだけどどうしても背景が出てこない(鬱 HPビルダー使っているからだめなんでしょうか?そんな事ないと思うけど。 それともファイル転送して初めて起動するんですか?それもないか・・・。
>kumi まず、日本語の勉強からはじめろや。
実際ここで何か聞く時は色々注意する事があるよ Q:簡単な質問 ↓ A:厨房逝ってよし!検索しろ!マナーに気を付けろ ↓ Q:ちょっと突っ込んだ質問 ↓ A:シーン、、、、放置 ↓ Q:また簡単な質問 ↓ A:厨房うぜえ、スキル無さ杉、もっと勉強しろ! 以上の無限ループでこの板は成り立っています 質問者に求められるのは何よりもまず、回答者のレベルを見極める能力なんです。
726 :
Name_Not_Found :01/09/27 19:57 ID:xPF4nQK.
>>722 実際スタイルシートをどんな風にいじったらいいかわかりません・・・。
どなたかいいアドバイスいただけませんか?
727 :
Name_Not_Found :01/09/27 19:59 ID:9NGlnvZ6
マウスを追いかける猫の配布先探しています。 マウスを追いかけて走ったり、止まったりする猫です。 シマ猫やら白い猫やらいろいろ猫アイコンの種類があるサイトがあったのですが、 その時お気に入り登録してなくていろいろ探し回ったのですが、巡りあえません・・・ ご存知の方教えて下さい!
>727 「マウスを追いかけるスクリプト」を探しているのか 「猫のアイコン」を探しているのか,ずばり 「マウスを追いかける猫」を探しているのか? どれかわからんけど,どれを google で検索してもたくさんある. ということで,自分で調べてください.
電波ばっかり。
731 :
711 :01/09/27 21:59 ID:0ip3MpkA
>>696 =721
document.body.setAttribute("background",myBack);
732 :
727 :01/09/27 22:06 ID:c.f52xOE
xnekoというんですね!! 検索したら欲しかったのがみつかりました! ありがとうございます。 やっぱ検索はヤフーよりgoogleの方がいいみたいですね・・・
733 :
Name_Not_Found :01/09/27 22:11 ID:xPF4nQK.
>>731 だ、だめです。みなさんのは動くのにどうして?
734 :
くどい696 :01/09/27 22:13 ID:xPF4nQK.
><SCRIPT language="JavaScript1.4"> <!-- myTime=(new Date()).getHours(); if(myTime>=5 && myTime<10){ myBack="C;\My Documents\haikei1.png"; }else if(myTime>=10 && myTime<17){ myBack="C;\My Documents\haikei2.png"; }else if(myTime>=17 && myTime<23){ myBack="C;\My Documents\haikei3.png"; }else if(myTime<5 || myTime>=23){ myBack="C;\My Documents\haikei4.png"; } document.body.setAttribute("background",myBack); //--> </SCRIPT> 編集してみたんですがどうでしょうか?
735 :
711 :01/09/27 22:21 ID:JQ8b11IU
>>734 場所違うだろ。(「;」ではないはずだし)
同じ場所にあるなら単に「haikei?.png」としていたほうがいい。
確認しているブラウザは何?
736 :
714 :01/09/27 22:25 ID:JQ8b11IU
>>kumi 適当だけど、 function c(obj,obj2){ if (obj.checked) document.getElementById(obj2).style.visibility = "hidden"; else document.getElementById(obj2).style.visibility = "visible"; } <input type="checkbox" id="check" onclick="c(this,'checklabel')"><label for="check" id="checklabel">チェック</label> つか、IDで711=714ばれてるな...
ブラウザのバージョンとか問題なのでは? 今だIE4.0の私も動かないよ・・・(TT)
738 :
くどい696 :01/09/27 22:55 ID:xPF4nQK.
私もIE4.0です。 これじゃあダメなんですか???(TT)
>質問者に求められるのは何よりもまず、回答者のレベルを見極める能力なんです。 こいつ馬鹿か? 漏れもちょっと難しい質問とかはカリスマさんに任せっきりだけど、なるべく調べるようにはしてる。 このKittyGuyは自分の無能を棚上げてか?
740 :
Name_Not_Found :01/09/27 23:35 ID:DcmhzNmk
>>719 何回かここで質問させて頂いた者ですが、
このスレは2chの中でもかなり良質なものだと思いますYO!
741 :
Name_Not_Found :01/09/27 23:41 ID:9pan97Sg
>>696 これでどう?(画像のパスは変更すること)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<title></title>
<SCRIPT LANGUAGE="JavaScript">
myTime=(new Date()).getHours();
if(myTime>=5 && myTime<10){
myBack="images/001.jpg";
}else if(myTime>=10 && myTime<17){
myBack="images/002.jpg";
}else if(myTime>=17 && myTime<23){
myBack="images/003.jpg";
}else if(myTime<5 || myTime>=23){
myBack="images/004.jpg";
}
</SCRIPT>
</head>
<body>
contents
<script type="text/javascript">document.body.style.backgroundImage = 'url('+myBack+')'</script>
</body>
</html>
確認済み:MacIE4.0, MacIE5.0NNで背景画像の変更ってどうするんだったっけ。。
742 :
741 :01/09/27 23:43 ID:9pan97Sg
× 確認済み:MacIE4.0, MacIE5.0NNで背景画像の変更ってどうするんだったっけ。。 ○ 確認済み:MacIE4.0, MacIE5.0 NNで背景画像の変更ってどうするんだったっけ。。
743 :
くどい696 :01/09/28 00:20 ID:E.q1hag.
>>741 -742
こんなに丁寧にソースを書いていただいて本当にありがとうございます。
ここの人たちに感謝しています。
残念な事に私はだめでしたけど、きっとうちの方法が何か悪いんだと思います。
(ちなみにWinです。)
大変ご迷惑おかけしました。
744 :
Name_Not_Found :01/09/28 00:25 ID:AIAd8RnU
<select>でオプションを開くメソッドは何でしょうか? onmouseoverで使い、マウスポインタを載せて開くようにしたいので。。。
>>くどい696 ↓やってみてくれはい。document.bodyをサポートしてないブラウザはダメです(N6未満とか…) <head> <style type="text/css"><!-- .sample1{ background:url("images/001.jpg"); } .sample2{ . . . (以下続く) --></style> <script type="text/javascript"><!-- function test(){ var doc=document.body; myTime=(new Date()).getHours(); if(myTime>=5 && myTime<10){ doc.className="sample1"; }else if(myTime>=10 && myTime<17){ doc.className="sample2"; }else if(myTime>=17 && myTime<23){ doc.className="sample3"; }else if(myTime<5 || myTime>=23){ doc.className="sample4"; } } //--></script></head><body onLoad="test()">
746 :
Name_Not_Found :01/09/28 02:10 ID:AIAd8RnU
age
747 :
Name_Not_Found :01/09/28 02:21 ID:z/OrWxhU
>>746 さりげなくて(・v・)イイ!
ドロップダウンリストを出すっていうのは無理なんじゃない?あまり聞いたことないけど。。
748 :
744 :01/09/28 02:27 ID:AIAd8RnU
>>747 そこらへんのJavaScriptのリファレンスは一応調べたのですが
結局分からなかったので質問するに至りました。
やっぱり無理なのかな。。。
まぁドロップダウンリストじゃなくても
マウスポインタ乗せて開くみたいな感じの仕組みを構成出来ればいいんだけどな。。。
749 :
Name_Not_Found :01/09/28 02:46 ID:zZP0x23.
750 :
744 :01/09/28 03:08 ID:PRbt8h4U
>>749 そうです、そういう感じのです。
ソース解析して頑張ってみます。
>>709 変な勘違いをさせてしまってすみません。DHTML(ダイナミックHTML)という
言葉はかなりあやふやで広い意味があるような気がするので、どこまでの
範囲を指してDHTMLと言っているのかなぁ、と思いまして...
えっと、普通DHTMLを使用する〜とかじゃなくて、DOMでドキュメントに
アクセスとかCSSでデザインを変更とか、そういう風にDHTMLを利用している
んじゃないかなぁ
>>くどい696
たぶんWinでN4を使っているんでしょうね。
N4で背景画像を後で操作する方法がわからなかったので、スタイルシートで
書き出すのがいいかな〜。Win IE5.5,N4.7,N6で確認(そりゃそーだ)
document.write('<style type="text/css">body { background-image: url('+myBack+')}</style>');
>>750 マジっすか?
752 :
Name_Not_Found :01/09/28 05:49 ID:DKSYAQ/Y
ウィルス騒動以来、JavaScriptを切って閲覧する人が増えたような気がするんですが、 どうですか? そんなことはありませんか?
騒動以前から切ってますが何か
すみません、ご質問なのですが、、、 Macのネスケ4.7でJavaScriptでレイヤー処理をすると、 あるMacでは何の問題もなく動作し、あるMacでは5〜10秒ぐらい正常動作した後、 「再読み込み」をしたような感じに自動的に画面がまたたいて、動作しなくなってしまいます。 またあるMacでは最初から動作しなかったりします。 これはNNのバグなのでしょうか? 本当に困っています。調べてみたところMacNN4.7でCSSにバグがあるようですが、 J.S.系のことは書かれていませんでした。 ご返答お待ちしています。
755 :
Name_Not_Found :01/09/28 09:58 ID:Xihqn1lo
textareaの中の文字のサイズを radioボタンを使って大きさを変更 (約三種類 12px◎ 24px◎ 36px◎) させたいんですが いろいろためしたけどうまくいきません。 助けてください どうかお願いします
756 :
090 :01/09/28 10:51 ID:QoYSnQec
757 :
裕太の母ちゃん :01/09/28 11:17 ID:VgcvM8tA
どなたかお願いです。アドバイスを・・・美容院のお客さんの来店履歴を見せるページ、.htaccessでそのお客さんだけに制限したいのです。
問題は会員番号を入れるとその人だけのページに飛ばしたいのです。
階層はこんな感じです。
/www--index.htm(ここからログインさせる)
|--/100
|--mypage.htm
|--.htaccess(require user 100)
・・・で、上のindex.htmでtextエリアに「100」と入れてsubmit押すと
下のmypage.htmにその人だけ入られるように。
<script type="text/javascript">
<!--
function MainChange(){
var PanObject = document.Data.No.value;
if(PanObject){
parent.main.location.href = "
http://www.********.com/ " + PanObject + "/mypage.htm";
}
}
formはこんな風にしました。
<form name="Data" action="" target="main" onSubmit="return false;">
<font size="2">ユーザーID</font>
<input type="text" name="No" size="13">
<input type="submit" name="Submit" value="Login"onClick="MainChange();">
</form>
やってみたら「ページでエラーが発生しました」と出てうんともすんとも言わないんです。
どなたか・・・・
758 :
裕太の母ちゃん(757) :01/09/28 11:54 ID:lAWwyQ/o
757番の続きです。 フレーム分けしていません。 以前、フレーム分けしたときに作った物なので それも悪く影響しているのでしょうか?
>>757 parent.main.location?
>>758 × parent.main.location.href
○ location.href
>>755 <script type="text/javascript"><!--//IE用
function moji(size){
document.all("txt").style.fontSize=size;
}
//--></script>
</head>
<body>
<form>
<input type="radio" name="test" value="12px" checked onClick="moji('12px')">12px
<input type="radio" name="test" value="24px" onClick="moji('24px')">24px
<input type="radio" name="test" value="36px" onClick="moji('36px')">36px
</form>
<textarea cols="50" rows="5" id="txt">あかさたなはまやらわ</textarea>
まだいい方法があると思います。。。
762 :
Name_Not_Found :01/09/28 18:14 ID:nFagIi9Q
javascriptはじめて1ヶ月のものですが、以下のようなコードが うまく動作しないのですが、何が問題でしょうか。 field = new Array("name", "name2", "tel", "_email"・・・); function check_val() { num = field.length; for (i=0; i<num; i++) { if (document.form6.field[i].value == "") { alert("入力されていない項目があります。"); return false; } } }
body部が書いてないから、何をしたいのか解りかねますが、 document.forms[6].....では?
764 :
くどい696 :01/09/28 19:47 ID:E.q1hag.
>>741 .
>>745 ,
>>751 いろいろ本当にありがとうございます。
ここまで考えてくださって感謝感激です!!!
今日もう一度頑張ってみようかなと思ってサイトを開いてみたら・・・・!!!!
なんと起動していました。昨日までうんともすんとも言わなかったのに!?
原因はわかりませんが
>>741 さんの方法で無事動きました。
いろいろご迷惑かけてごめんなさい。
また質問する事があるかもしれませんが、その時はどうぞよろしくお願いします。
>>749 ビョークのページじゃないですか。
ダンサー・イン・ザ・ダーク、深かったっすねぇ。
766 :
Name_Not_Found :01/09/28 22:14 ID:0z75jO6E
初心者ですけど、ひとつ質問させて頂いてよろしいですか? 『初体験JAVA』という本に書いてあった方法で、ボタンを押すと画像が出る、 というのをつくったのですが、自分のパソコンでは動くのに、ホームページに UPすると、灰色の画面だけしか出ません。 I.E.の左下には error.java.lang.NoclassDefFounderror:Lesson12$1 とか出てます。 何か解決法はないでしょうか?
>>766 ソースキヴォン。
JAVAはわかりません。
クリップボードへのコピーを禁止したりって JavaScript でできます?
769 :
Name_Not_Found :01/09/28 23:56 ID:ZoSmrgLk
Mosaic−−−NC−−−N−−−−−−−−−−−⇒(本家) │ −−−−−IE−−−−−−−−−⇒(NCの支流) │ −−−−−−Donut−⇒(IEの支流) Opera−−−−−−⇒(独自路線)
770 :
Name_Not_Found :01/09/29 00:02 ID:IfpodaIw
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Mosaic━━━NC━━━━━━━━━━━━━━━⇒(本家) ^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^━━━━━IE━━━━━━━━━⇒(NCの支流) ^^^^^^^^^^^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^━━━━━━Donut━⇒(IEの支流) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Opera━━━━⇒(独自路線) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
771 :
Name_Not_Found :01/09/29 00:02 ID:IfpodaIw
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Mosaic━━━NC━━━━━━━━━━━━━━━⇒(本家) ^^^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^━━━━━IE━━━━━━━━━⇒(NCの支流) ^^^^^^^^^^^^^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^━━━━━━Donut━⇒(IEの支流) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Opera━━━━⇒(独自路線) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
772 :
Name_Not_Found :01/09/29 00:03 ID:IfpodaIw
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Mosaic━━━NC━━━━━━━━━━━━━━━⇒(本家) ^^^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^━━━━━IE━━━━━━━━━⇒(NCの支流) ^^^^^^^^^^^^^^^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^━━━━━━Donut━⇒(IEの支流) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Opera━━━━⇒(独自路線) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>769 =771
それは単に各UAの発達背景に過ぎない。
機能面での分類は?
関係ないのでsage
774 :
Name_Not_Found :01/09/29 00:13 ID:i7bcN4Fg
775 :
Name_Not_Found :01/09/29 00:16 ID:i7bcN4Fg
>>757 セキュリティ板の話題かもしらんが。
会員番号だけで認証するなら、もし連番だったら、別のユーザーのパスワード(すなわち会員番号)が
用意に推測できてしまうのでは?
776 :
Name_Not_Found :01/09/29 00:20 ID:IfpodaIw
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Mosaic━━━NC━━━━N━━━━━━━━━━━━⇒(本家)^^^^^^^ ^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^━━━━━━━━━━━IE━━━━━━━━━━⇒(Mosaicの支流) ^^^^^^^^^^^^^^^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^━━━━━━Donut━⇒(IEの支流)^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Opera━━━━⇒(独自路線)^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
777 :
Name_Not_Found :01/09/29 00:21 ID:IfpodaIw
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Mosaic━━━NC━━━━N━━━━━━━━━━━━⇒(本家) ^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^━━━━━━━━━━━IE━━━━━━━━━━⇒(Mosaicの支流) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^┃^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^━━━━━━Donut━⇒(IEの支流) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Opera━━━━⇒(独自路線) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>754 レイヤー処理ってどんなのかな?
>>762 <html><head><title>???</title>
<script type="text/javascript">
var field = new Array("name", "name2", "tel", "_email");
function check_val() {
for (i=0; i<field.length; i++) {
if (document.form6[field[i]].value == "") {
alert("項目「"+field[i]+"」が空欄です\n記入してもう一度送信しなおしてください");
return false;
}}}
</script></head><body>
<form name="form6" onSubmit="return check_val()">
name:<input type="text" name="name"><br>name2:<input type="text" name="name2"><br>
tel:<input type="text" name="tel"><br>email:<input type="text" name="_email"><br>
<input type="submit" value="送信"></form>
</body></html>
↑こういう事がしたいんだと思うけど、オラだったらこう↓するよ。
function check_val(thisform){
for (i=0; i<thisform.length; i++){
if (thisform[i].value == ""){
alert("項目「"+thisform[i].name+"」が空欄です\n記入してもう一度送信しなおしてください");
return false;
}}}
…略… onSubmit="return check_val(this)"
>>768 う〜ん、できないんじゃないかな?
779 :
690 :01/09/29 07:11 ID:F/9838Ro
>>691 遅レスでスマソ。出かけていたので…
そうね、あんたが正しい。HTMLElementはコンストラクタではない、
というかDOMにはコンストラクタという概念はない…Mozillaでたは
またまイケるというだけでした。
780 :
Name_Not_Found :01/09/29 07:45 ID:yf4PWVH2
>>774 ソースファイルが1つでも内部クラスを使うと.class ファイルは複数
できるんだけど、それを全部持って行かないといけないのを知らない。
っていうのはよくある話だよね。しかしJavaの話題はちゃんとJavaの
スレでやっていただきたい。
>>775 同感。一緒に「名前」とか入れてもらって混ぜるとか。
781 :
Name_Not_Found :01/09/29 13:25 ID:w1uuqtV2
>>774 違うよ。
classをアップしてないならもっと単純なメッセージが出る。
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class Lesson12 extends Applet{
Button myBtn;
Image myImg;
int flag;
public void init(){
add(myBtn = new Button("写真"));
myBtn.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
flag = 1;
repaint();
}
});
myImg = getImage(getDocumentBase(),"photo1.JPG");
flag = 0;
}
public void paint(Graphics g){
if (flag == 0);
else
g.drawImage(myImg,20,20,this);
}
}
782 :
Name_Not_Found :01/09/29 13:31 ID:zDiy20Ck
>>781 これだとclassファイルが「2つ」できるはずなんだけど、「2つとも」
アプしてる〜?
どっちにしろ、スレ違いだからさっさとJavaの質問するとこに行って
欲しいなー。JavaScriptの質問、求む。
783 :
くどい696(ラストです) :01/09/29 13:40 ID:N/ZK1ua.
>>741 さんのアドバイスにより無事成功できたように思えたのですが
なぜか17時から23時までしか起動しないんです。
もううちのパソコンがイカれてるんでしょうか?原因わかりますか?
784 :
Name_Not_Found :01/09/29 13:47 ID:zDiy20Ck
>>783 そりゃー、その時刻用の画像以外の画像指定が間違っている
からではないですか?URIの指定に「;」だの「\」だの「C:」
だの使わない方がいいっていうのはもう分かったの?ソース
貼ってみれば。
785 :
Name_Not_Found :01/09/29 14:08 ID:zDiy20Ck
>>715 アンタ自分の書き方がまだ分かりにくいっていうの了解して
ないね?「チェックされた項目」って、その「項目」はナニ?
たとえばその「項目」が見出しだったら、チェックを外した
らその見出しも表示されなくなるってことだよね。次のよう
な感じでいいの?このスレでちゃんと答えてもらえないのは
だいたいにおいて質問が下手か激しくガイシュツの場合だと
思うんですよね。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
function change(v, i) {
document.getElementById(i).style.visibility = (v)?'visible':'hidden';
}
</script>
</head><body>
<h1 id='h1'>Test 1</h1>
<h1 id='h2'>Test 2</h1>
<h1 id='h3'>Test 3</h1>
<form action="#"><p>
h1<input type="checkbox" checked name="c1" onchange="change(this.checked,'h1')">
h2<input type="checkbox" checked name="c2" onchange="change(this.checked,'h2')">
h3<input type="checkbox" checked name="c3" onchange="change(this.checked,'h3')">
</p></form>
</body></html>
786 :
Name_Not_Found :01/09/29 14:50 ID:zDiy20Ck
>>750 読めましたか(w ちょっと簡単な例題作ってみました。要するに
mouseoverとvisibilityの制御を関連づければいいのね。ガイシュツ
だけど。ちなみにDynamic HTMLという用語はすごくあいまいな感じが
するので私は使わないようにしてます。手元のJavaScript本にも載っ
てないし(DOMとかCSSの操作とかは載っているぞ)。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
#d1 { position: absolute; top: 10px; left: 10px; width: 100px; height: 200px;
border-width: 2px; border-style: solid; border-color: blue;
visibility: hidden; background-color: white }
</style>
<script type="text/javascript">
function setv(v) { document.getElementById('d1').style.visibility = v; }
</script>
</head><body>
<p><span onmouseover="setv('visible')">test...</span></p>
<div id="d1" onmouseout="setv('hidden')">test 2...</div>
</body></html>
787 :
ナウシカ :01/09/29 22:49 ID:p99rI4eA
以下のソースで 窓の淵(cellSpacingColor)を白く するにはどうしたらいいですか?? <HTML> <HEAD> <TITLE>ステータス画面</TITLE> <BODY text=#ffffff cellSpacingColor=#000000 bgColor=#000000> <P align=center> </P> <DIV align=center> <CENTER> <TABLE cellSpacing=3 cellPadding=20 width="75%" bgColor=#0000bf border=1> <TBODY> <TR> <TD width="100%"> <P align=center><FONT size=3>バロン城下町</FONT></P></TD></TR></TBODY></TABLE></CENTER></DIV> <P align=center> </P> <P align=center> </P> <P align=center> </P> <P align=center> </P> <DIV align=center> <CENTER> <TABLE> </P></BODY></HTML>
>>787 IEでは、TABLEにbgColor="#FFFFFF"を付けて、
TRにbgColor="#0000bf"を付けると白くなる。
ネットスケープでは効かず。
つーか、はなはだしくスレ違い。
789 :
ナウシカ :01/09/30 01:40 ID:rTnz.C/g
すいません・・・・・。 これってスクリプトじゃあないの??
h(T_T)p://www.object-design.co.jp/~akira/tsunami/script/021/index.html こんなの良く作れるな・・・ これの理屈ワカル?
792 :
Name_Not_Found :01/09/30 16:14 ID:y2sdgEGw
793 :
792 :01/09/30 21:58 ID:rCVbBx96
>>792 いや、違うかもしんないな。あいてるとこは「白い画像」を埋めて
おいて、ロールオーバーと同じようにして画像を差し替えるダケで
できますよね。まあどうやってもできるということかな。
794 :
ナウシカ :01/09/30 22:44 ID:rTnz.C/g
スレ違いならごめんなさい。 もし知ってる人がいればいいのですが、 いま、文字を上から順番に出すようなHTMLを作っているのですが FF3のスイッチ入れて直後に流れる そのグルクカン族の男は静かに語った・・・・。 というような初めは何も無い画面に 上の行から1行ずつゆっくりと表示するように したいのですけどどうすればいいでしょうか・・・。 上から下に流れるような感じのはよくありますけど このFF3のような感じのはありませんよね・・・。 皆さんの中にはFF3を知らない人もいらっしゃると 思いますが、もし、分かる方がいたら どうかお願いします・・・。
795 :
ナウシカ :01/09/30 22:47 ID:rTnz.C/g
いま、794みて思ったのですけど 794の文は日本語変かも・・・・。 というような ↓ というように ですかね・・・・。
>>793 いや、空白部分に接した所のみをロールオーバーさせて
空白に隣接してない所はクリックしても無駄ってのが凄まじい。
ソース調べてるけど、難解だわ、これ。
俺マホだし。。
ポップアップウィンドウの作り方教えてください。
>>797 HRESULT ShowHTMLDialogEx(
HWND hwndParent,
IMoniker *pMk,
DWORD dwDialogFlags,
VARIANT *pvarArgIn,
WCHAR *pchOptions,
VARIANT *pvarArgOut
);
泣くなよ!
IMoniker は "about:blank" ので OK
800 :
Name_Not_Found :01/10/01 08:01 ID:Ty5G6gBg
>>794 スレ違いではありません。ページの中身を「任意に動かす」のはだいたいJavaScriptの
守備範囲ですもんね。色や形を「設定する」だけだとCSSやHTMLだけで済むことが多いん
で。さて、1文字ずつ上から出て来る例ですけど、vol.3で紹介したのを再度出しますね。
動きが好みでなければそこんとこだけ変えればいいでしょう。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
div { position: absolute; font-size: xx-large; visibility: hidden }
</style>
<script type="text/javascript">
var body, tid, a = new Array();
function Panel(s, x, y, b, v, a, w) {
this.xpos = x; this.ypos = y; this.vy = v; this.wait = w;
this.alpha = a; this.base = b; this.moving = true;
this.elt = document.createElement('div');
this.elt.style.left = x+'px'; this.elt.style.top = y+'px';
this.elt.appendChild(document.createTextNode(s));
body.appendChild(this.elt);
}
Panel.prototype.move = function(dt) {
if((this.wait -= dt) > 0) return;
this.elt.style.visibility = 'visible';
if(!this.moving) return;
this.ypos += this.vy * dt; this.vy += this.alpha * dt;
if(this.ypos > this.base) {
this.vy = this.vy * -0.5; this.ypos = this.base;
}
if(this.ypos > this.base-5 && this.vy*this.vy < 5) {
this.ypos = this.base; this.moving = false;
}
this.elt.style.top = this.ypos + 'px';
}
function init() {
body = document.getElementById('b1');
a.push(new Panel('A', 100, 100, 200, 100, 400, 1));
a.push(new Panel('B', 125, 100, 200, 100, 400, 2));
a.push(new Panel('C', 150, 100, 200, 100, 400, 3));
a.push(new Panel('D', 175, 100, 200, 100, 400, 4));
tid = setInterval(step, 50);
}
function step() {
var flag = false;
for(var i = 0; i < a.length; ++i) {
a[i].move(0.05); if(a[i].moving) flag = true;
}
if(!flag) clearInterval(tid);
}
</script>
</head><body id="b1" onload="init()">
<p>test...</p>
</body></html>
801 :
Name_Not_Found :01/10/01 08:05 ID:aNcFc2hM
>>796 そういうアルゴリズム部分はJavaScriptだからどうというワケじゃあない
ですよね…確かにそのページのは難解ですね。自前で作ってみました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
th, td { width: 75px; height: 75px }
</style>
<script type="text/javascript">
var iname = [['t1.png','t2.png','t3.png','t4.png'],
['t5.png', 't6.png','t7.png','t8.png'],
['t9.png', 't10.png','t11.png','t12.png'],
['t13.png', 't14.png','t15.png','blank.png']];
var imgs = [[new Image(),new Image(),new Image(),new Image()],
[new Image(),new Image(),new Image(),new Image()],
[new Image(),new Image(),new Image(),new Image()],
[new Image(),new Image(),new Image(),new Image()]];
var tbl = null, blank = imgs[3][3];
function init() {
if(tbl != null) return;
tbl = document.getElementById('t1');
for(var i = 0; i < 4; ++i) {
tbl.insertRow(i);
for(var j = 0; j < 4; ++j) {
imgs[i][j].src = iname[i][j];
tbl.rows[i].insertCell(j);
tbl.rows[i].cells[j].appendChild(imgs[i][j]);
if(window.addEventListener) {
tbl.rows[i].cells[j].addEventListener('mousedown',
new Function('', 'click(' + i + ',' + j + ');'), true);
} else if(document.all) {
tbl.rows[i].cells[j].onclick =
new Function('', 'click(' + i + ',' + j + ');');
}
}
}
}
function click(i, j) {
check(i, j, i-1, j) || check(i, j, i, j-1) || check(i, j, i, j+1) ||
check(i, j, i+1, j);
}
function check(a, b, c, d) {
if(c < 0 || c > 3 || d < 0 || d > 3 || imgs[c][d] != blank) return false;
tbl.rows[a].cells[b].removeChild(imgs[a][b]);
tbl.rows[c].cells[d].removeChild(blank);
tbl.rows[a].cells[b].appendChild(blank);
tbl.rows[c].cells[d].appendChild(imgs[a][b]);
imgs[c][d] = imgs[a][b]; imgs[a][b] = blank; return true;
}
</script>
</head><body id="b1" onload="init()">
<table id="t1" border="2"></table>
</body></html>
802 :
Name_Not_Found :01/10/01 08:15 ID:WauHcHEI
>>798 JavaScriptじゃないじゃん!
>>797 その「ポップアップウィンドウ」は具体的には次のどれでしょう?
1. いわゆるダイアログボックスで、他の窓をおしのけて手前に出て、
警告を表示したり、YES/NOを答えさせたり、文字列を1個入力させた
りして、それが終わると消える。
2. スクロールバーやツールバーがないけど普通のブラウザの窓で、
ずっと存在して、そこにHTMLを表示したり、ボタンやリンクを使っ
て何らかの動作を起動したりする。
3. ブラウザの窓の中で、ページ内容の手前に四角い領域がポップ
アップしてくる。
どれも可能ですが、やり方はぜーんぜん違いますから。
803 :
通行人 :01/10/01 12:37 ID:liu8QTvM
804 :
チンプイ :01/10/01 12:50 ID:fYBgW2fs
805 :
Name_Not_Found :01/10/01 13:10 ID:uh6XQ8Sw
>>804 JavaScript と JavaApplet は別物。すれちがい。
>>803 そりゃぁ〜カリスマさんだもん!
800のオブジェクト指向のコードはいろいろと変化がつけやすくてイイですね。
807 :
Name_Not_Found :01/10/01 16:59 ID:J24MNnME
>>805 いやまあそうなんだけど、そのページ見てみると、どー見ても
わざわざアプレット使うよりJavaScriptの方が向いている内容
だと思うんですよね。N4で見たらどっちも文字が化けて「?」
が飛んでいるけど…(w
>>804 「下から上に流す」みたいのは文字列を含んでいる要素の位置を
DOMで制御すればいいわけで、setTimeout()かsetInterval()
で短い時間間隔でちょっとずつ上へ移動していけばできます。
その上の星みたいなのは、4つ領域を用意して、その領域の中で
それぞれ画像を動かして行けばいいと思いますけど。
808 :
こまったさん :01/10/01 17:22 ID:RDsuTx3g
以下のSetupDisp関数をBodyOnLoad時に動かそうとしています。 function SetupDisp(){ var k; k = document.FORM1.HOGE1.value; document.FORM1.SELECT1.options[document.FORM1.HOGE2.value].selected = true; SELECT1_Chg(window.document.FORM1.HOGE2.value); ※1 document.FORM1.SELECT2.options[k].selected = true; } function SELECT1_Chg(SelNo){ var i; var j; j = 1; for(i= 0; i < B_Sel.length; i++){ if(eval(SelNo) == eval(B_Sel[i].substring(0, 3))){ document.FORM1.SELECT2.options[j] = new Option(B_Sel[i].substring(3, 500),j); j++; } } } var B_Sel = new Array( " 1200100/hogehogehoge1", " 1200101/hogehogehoge2", " 2200901/hogehogehoge3", ""); ここでは2つのSELECT部品のうちSELECT@が選ばれると、 SELECTAのOptionを、B_Selの配列から、選択されたINDEX に従って追加するような動きをしてます。 この処理がIE5.0ではうまくいくのですが、NN6では追加された 後にあるINDEXをSELECTEDさせようとしている、SetupDisp() の最後の行だけ機能しません。しかし、※1の場所にalertを入れると 何故か機能するのです。この現象の原因と解決法についてアドバイス 頂けないでしょうか。
810 :
こまったさん :01/10/01 17:51 ID:RDsuTx3g
済みません。FORM部だけで良いでしょうか?
<FORM NAME="FORM1" method="POST" action="
http://hogehoge.com/ ">
<SELECT name="SELECT1" onchange="SELECT1_Chg(this.value)">
<option value=0>000000/hogedefault1</option>
<option value=1>101010/hogehoge2</option>
</SELECT>
<INPUT TYPE="HIDDEN" Name="HOGE1" value="1">
<INPUT TYPE="HIDDEN" Name="HOGE2" value="1">
<SELECT name="SELECT2" onchange="SELECT2_Chg(this.value)">
<OPTION value=000000>hogedefault2</option>
</SELECT>
</FORM>
811 :
こまったさん :01/10/01 19:10 ID:RDsuTx3g
済みません。他所で解決いたしました(^^; selected プロパティが機能しておりませんでした。 selectedIndexに変更するとNNでも動くようになりました。 お騒がせ致しまして申し訳ありません。
812 :
797 :01/10/01 19:47 ID:O9BtwEnw
>>802 トップページを表示する時に、画像やメッセージ入りの
小さめの窓を出したいんです。どうかよろしくお願いいたしますm(__)m
813 :
れべる1 :01/10/01 20:07 ID:uh6XQ8Sw
>>812 window.open で調べてみたら、いとおかし
814 :
Name_Not_Found :01/10/01 21:20 ID:d40FkRUw
>>812 既に
>>813 が出ていますが、お教えします…けど、小窓を別に出す
ということ自体、非常に嫌われる(私も大嫌いでそういうトップページ
はよっぽどの理由がない限り2度と行かない)ということは注意してね。
まず、小窓に入れる画像やメッセージは普通にHTMLで用意します。
そしてbodyの開始タグを
<body onload="window.open('小窓のURI', '名前', 'width=幅,height=幅')">
とすればいいんじゃないでしょうか。名前は適当につけていいです。
このように、windowオブジェクトにどういうメソッドがあるか、
その使い方は、等については多くの情報サイトで見られるはず。では
がんばってください。でもやめた方がいいですよ>>小窓
815 :
Name_Not_Found :01/10/01 21:22 ID:qzT/K9Xk
スタイルシート切替スクリプトを改造中です。 クッキーを設定する変数で var CookiePath = '/ディレクトリ名/';とあるのを、 ディレクトリではなく各ページごとにクッキーを設定したいので、 var CookiePath = window.location.pathname ;としましたが、うまくゆきません。 他のスレッドで ><script type="text/javascript">var CookiePath="ページ名.html";</script>だけ >文書に埋め込んでおいて外部JavaScriptファイルでCookiePathを参照するとか。 とのご示教を得たのですが、無知の哀しさ、その参照させるやり方がわかりません。 そこでここにて改めて質問致す次第。 どなたでもご教示いただけると助かります。
816 :
チンプイ :01/10/01 22:54 ID:fYBgW2fs
<HTML> <HEAD> <TITLE>オープニング</TITLE> <BODY text=#ffffff bgColor=#000000> <P align=center> </P> <DIV align=center> <CENTER> <TBODY> </TD> <TD colspan="2"> <TABLE border="2" cellspacing="2" cellpadding="4" bordercolor="#cccccc" bgColor=#ffffff width="300"> <TBODY> <TR> <TD colspan="6" align="center" bgcolor="#000099"><BR> <FONT size="2">そのグルガン族の男は静かに語った<BR> この大地震さえも単なる予兆に過ぎぬと<BR> 世界の光の源であるクリスタルを<BR> 地中深く引きずり込み<BR> 魔物を生みだした大きな震えさえも<BR> これから訪れるものに比べれば<BR> ちっぽけなものである<BR> それはとてもつもなく大きく、深く、暗く<BR> そして哀しい<BR> だが、希望はまだ失われていない<BR> 4つの魂が、光に啓示を受けるであろう<BR> そこからすべてが始まり・・・・・・<BR> <BR> 4人の少年達はみなしごで<BR> 辺境の村「ウル」の長老トパパに育てられた<BR> 大地震でクリスタルが地中に沈み<BR> そこにできた洞窟へとやってきた<BR> 4人は探検気分<BR> ちょっとした度胸だめしのつもりだった</FONT><BR> <BR> </TD> </TR> </TBODY> </TABLE> </TD> </TR> </TBODY> </TABLE> <TABLE cellpadding="6"> <TBODY> <TR>
817 :
チンプイ :01/10/01 22:56 ID:fYBgW2fs
すいません。。。 >>817のを上から下にスクロールするにはどうすればいいでしょうか?? 他の掲示板で聞いたところ、ジャバスクリプトと聞きましたので、ここに書かせていただきます・・・。
818 :
812 :01/10/01 23:55 ID:S8z/K2EM
819 :
Name_Not_Found :01/10/02 03:06 ID:ZGv00riQ
すんごい昔の書き込みについての質問ですみません。 581の、オブジェクト生成関数の中で、 オブジェクト自身を、this.eltに代入しているのですが、 このeltって、何の略なんでしょうか?
>>818 やれYO!
814に嫌われたってどうって事はないぞ。
どうせ知り合いでも無いんだしな。
822 :
814 :01/10/02 09:10 ID:SvKGGKrs
>>818 814と821のどっちを重視するかだな。(w
>>816 ホレ。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
#d0 { height: 100px; overflow: hidden }
#d1 { position: relative; top: 100px; left: 5px }
</style>
<script type="text/javascript">
var pos = 100, count=100, elt;
function init() {
elt = document.getElementById('d1'); setTimeout(step, 50);
}
function step() {
elt.style.top = (pos -= 1) + 'px'; if(--count > 0) setTimeout(step, 50);
}
</script>
</head><body onload="init()">
<table border="2"><tbody>
<tr><th>A</th><th>B</th></tr>
<tr><th>C</th><td><div id="d0"><div id="d1">
あいうえおかきくけこ<br>
さしすせそたちつてと<br>
...
</div></div></td></tr>
</tbod></table>
</body></html>
823 :
Name_Not_Found :01/10/02 11:44 ID:CgKa/csA
>>804 下から上ってのは
>>822 でやったので、モノを放射状に飛ばす
方を作ってみました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
div { position: relative; overflow: hidden }
#d0 { position: absolute; top: 50px; left: 50px; width: 100px; height: 100px }
#d1 { position: absolute; top: 150px; left: 50px; width: 100px; height: 100px }
#d2 { position: absolute; top: 50px; left: 150px; width: 100px; height: 100px }
#d3 { position: absolute; top: 150px; left: 150px; width: 100px; height: 100px }
</style>
<script type="text/javascript">
function Fly(id, vx, vy, x0, y0, dx, dy, lim) {
this.elt = document.getElementById(id); this.x = this.y = 0;
this.vx = vx; this.vy = vy; this.x0 = x0; this.y0 = y0;
this.dx = dx; this.dy = dy; this.lim = lim; this.cnt = 0;
}
Fly.prototype.step = function() {
if(this.cnt <= 0) {
this.x = Math.floor(this.x0 + Math.random()*this.dx);
this.y = Math.floor(this.y0 + Math.random()*this.dy);
this.cnt = this.lim + Math.floor(Math.random()*this.lim);
}
this.elt.style.left = (this.x += this.vx) + 'px';
this.elt.style.top = (this.y += this.vy) + 'px'; --this.cnt;
}
var a = new Array();
function init() {
a.push(new Fly('d01', 4, 4, -50, -50, 30, 30, 40));
a.push(new Fly('d02', 4, 4, -30, -30, 30, 30, 40));
a.push(new Fly('d11', 4, -4, -30, 120, 30, 30, 40));
a.push(new Fly('d12', 4, -4, -50, 140, 30, 30, 40));
a.push(new Fly('d21', -4, 4, 150, -60, 30, 30, 40));
a.push(new Fly('d22', -4, 4, 130, -40, 30, 30, 40));
a.push(new Fly('d31', -4, -4, 130, 130, 30, 30, 40));
a.push(new Fly('d32', -4, -4, 150, 150, 30, 30, 40));
setInterval(step, 50);
}
function step() { for(var i = 0; i < a.length; ++i) a[i].step(); }
</script>
</head><body onload="init()">
<div id="d0"><div id="d01">■</div><div id="d02">□</div></div>
<div id="d1"><div id="d11">●</div><div id="d12">○</div></div>
<div id="d2"><div id="d21">★</div><div id="d22">☆</div></div>
<div id="d3"><div id="d31">▲</div><div id="d32">△</div></div>
</tbod></table>
</body></html>
824 :
Name_Not_Found :01/10/02 12:26 ID:CgKa/csA
>>815 その「スタイルシート切替スクリプト」がなんだか分からない
ので質問の意味もよくわからないんですけど。分からない上で
想像するに、変数に入っているファイル名のファイルからJS
コードを読み込んで来るってこと?それならdocument.write
で <script src='ファイル名'></script> を書き出せばできると
いうか、そういう回答でいいのかな?
getElementByIdウザイ ネスケ死。
826 :
Name_Not_Found :01/10/02 12:34 ID:CgKa/csA
ちなみに
>>822 >>823 ともN6/MozillaだけでなくIE5.5でも
動作しますんで。IEでは動作しない奴がお望みで?
827 :
815 :01/10/02 12:39 ID:GgEuipqs
828 :
Name_Not_Found :01/10/02 12:48 ID:CgKa/csA
>>827 え…そんなのナニも要りませんよ。変数を参照するだけ。
---HTML---
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
var xx = 'あいうえお';
</script>
<script type="text/javascript" src="test.js"></script>
</head><body>
<p><a href="javascript: test()">test...</a></p>
</body></html>
---test.js---
function test() { window.alert(xx); }
829 :
815=827 :01/10/02 13:47 ID:BmHRTKeo
>>828 有り難うございます。しかしなぜかうまくゆきません。
こんな感じなのですが。(aaaがbbb、ccc、以下ファイルの数だけ変更)
<html><head><title>aaa</title>
<link rel="stylesheet" type="text/css" href="./stylesheets/persist.css">
<link rel="stylesheet" type="text/css" href="./stylesheets/a.css" title="A">
<link rel="alternative stylesheet" type="text/css" href="./stylesheets/b.css" title="B">
〜略〜
<script type="text/javascript">
var CookiePath;
if (location.protocol == 'file:') {CookiePath = 'file:///C:/MyWeb/aaa.htm';}
else {CookiePath='
http://natto.2ch.net/aaa.htm ';}
</script>
</head><body>
<script TYPE="text/javascript" charset="Shift_JIS" src="./javascript/SwitchStyle.js"></script>
〜略〜
</body></html>
---SwitchStyle.js---
〜前略〜
var d = document;
function setCookie() {
if(!dS) dS = d.styleSheets;
for(var i=0; i<dS.length; i++) {
if(!dS[i].title || dS[i].disabled) continue;
else {var sheetTitle = dS[i].title; break;}
}
if(!sheetTitle) {
var SEL = d.StyleChangeForm.SEL;
sheetTitle = SEL.options[SEL.selectedIndex].value;
};
if(CookieType) {
var expires = new Date();
expires.setTime(expires.getTime() + 1000*60*60*24*CookieDays);
}
d.cookie = CookieName + '=' + escape(sheetTitle)
+ (d.domain ? ('; domain=' + d.domain) : '')
+ (d.domain && CookiePath ? ('; path=' + CookiePath) : '')
+ (CookieType ? ('; expires=' + expires.toGMTString()) : '');
}
〜後略〜
FF3ならば、こんなのもありかと(ie5)
<html><head><style type="text/css">
span { color:#ffffff; width:100%; filter:Alpha(opacity=0); }
</style><script type="text/javascript">
index= 0;
rate_alpha = 0;
num_index = 5; //項目の数
function fade(){
srate_alpha++;
if( rate_alpha > 100 ){
rate_alpha = 0;
index++;
if( index >= num_index ){
return false;
}
}
str = "Alpha(opacity=" + rate_alpha + ")"; //スマートなやり方が分からない(^-^;
document.getElementById('s'+index).style.filter = str;
return true;
}
function init(){
id = setInterval( function(){ if( ! fade() ){ clearInterval( id ); }},20 );
}
</script></head>
<body bgcolor="#0000ff" onLoad="init()">
<div align=center>
<br><br><br>
<span id="s0">そのグルガン族の男は静かに語った</span>
<span id="s1">この大地震さえも単なる予兆に過ぎぬと</span>
<span id="s2">世界の光の源であるクリスタルを</span>
<span id="s3">地中深く引きずり込み</span>
<br>
<span id="s4"><略></span>
</body>
<html>
filterを使ってるので、あまりお薦めではないです。背景色固定なら色変えていくのがよさそう。
しかし、やはり、真のFF3フリークならブリンクで半透明を実現したいところ(w
http://www.geocities.co.jp/Playtown-Knight/7332/grocery/ff3.htm (ie5のみ確認)
これ作ってるところ、人に見られてかなり鬱
831 :
830 :01/10/02 14:05 ID:9TTbPI5o
すいません、変なsが入ってしまいました。貼り直し。 <html><head><style type="text/css"> span { color:#ffffff; width:100%; filter:Alpha(opacity=0); } </style><script type="text/javascript"> index= 0; rate_alpha = 0; num_index = 5; //項目の数 function fade(){ rate_alpha++; if( rate_alpha > 100 ){ rate_alpha = 0; index++; if( index >= num_index ){ return false; } } str = "Alpha(opacity=" + rate_alpha + ")"; //スマートなやり方が分からない(^-^; document.getElementById('s'+index).style.filter = str; return true; } function init(){ id = setInterval( function(){ if( ! fade() ){ clearInterval( id ); }},20 ); } </script></head> <body bgcolor="#0000ff" onLoad="init()"> <div align=center> <br><br><br> <span id="s0">そのグルガン族の男は静かに語った</span> <span id="s1">この大地震さえも単なる予兆に過ぎぬと</span> <span id="s2">世界の光の源であるクリスタルを</span> <span id="s3">地中深く引きずり込み</span> <br> <span id="s4"><略></span> </body> <html>
832 :
Name_Not_Found :01/10/02 14:07 ID:CgKa/csA
>>829 CookiePathは渡っているんじゃないですか?setCookie()の中で
window.alert()を使って表示させてみては…
そもそも、クッキーのpathって「/」で始まっていなくていい
のでしょうか…そっちの問題っていう可能性はチェックしました?
833 :
815=827=829 :01/10/02 14:39 ID:BmHRTKeo
>>832 たびたび済みません。
window.alert(CookiePath)でチェックしたらちゃんと参照されてました。
>クッキーのpathって「/」で始まっていなくていい のでしょうか
ご指摘にしたがってvar CookiePath = '/MyWeb/aaa.htm'としてローカルで実験しました。
しかしやはりaaa.htmlでセレクトしたスタイルがbbb.htmlにも反映されてしまって
個々のページごとの設定を別々のCookieに保存せることに失敗します。
もし対処法がおわかりでしたら、どうかご教示下さい。
834 :
Name_Not_Found :01/10/02 14:57 ID:CgKa/csA
>>833 もはやJavaScriptの話題じゃないんですが…そもそもクッキー
というのはディレクトリ単位でしかpathによるアクセス区分
できないんじゃないですかね?もしそうなら、pathを使うかわ
りに「どのファイル名」というのをクッキーデータの一部と
して覚えるのかな…まあ、こっから先はWebProg板の識者
に聞いた方がいいですよー。
835 :
833 :01/10/02 15:14 ID:anA8xGvY
>>834 >こっから先はWebProg板の識者に聞いた方がいいですよー
そこは私ごとき初心者には敷居が高うございます……。
どうも身の程を知らず手にあまることに挑んでしまったみたいです。
いまの技術力ではスタイルシート切替スクリプトの自己改造は早かったのかなあ。
いまできる範囲での改造スクリプトでアップロードすることにします。
せっかく色々ご助言いただいたのに生かし切れず、ごめんなさい。
また解決法が見つかったらそれはその時に。
836 :
チンプイ :01/10/02 17:33 ID:IqCPxGns
>>830 さん、どうもありがとうございました。
おもわず実行して感動してビックリしてしまいました。
この、メッセージの1行目が出るのをもう少し遅くしたい場合
setMesの命令ではうまくいかないのでしょうか??
どうか、教えてください。
その他の方もどうもありがとうございました。
まだ、ちゃんと全部見ていないので
ちゃんと見たらまたコメントしたいと思います。
837 :
チンプイ :01/10/02 18:25 ID:IqCPxGns
>>830 の
index= 0;
rate_alpha = 0;
num_index = 36; //項目の数
function fade(){
rate_alpha++;
if( rate_alpha > 100){
rate_alpha = 0;
index++;
if( index >= num_index ){
return false;
}
のif( rate_alpha >の後の数字を
50にするとメッセージは速くなるのですが
色の濃さが元の半分になってしまいますよね??
いろは100のときと同じ濃さで
メッセージ速度を2倍にするにはどうすればいいでしょうか・・・。
なんか、質問ばっかりですいません・・・・・・。
838 :
Name_Not_Found :01/10/02 20:54 ID:Apfvgng.
スミマセンフォームでのファイルアップロードで質問させてください。 enctype="multipart/form-data"に設定した FORMを使ってファイルアップデートをさせようとおもっています。 そこでFILE入力項目<INPUT type=file ... のファイル名が空だったら 「ファイル名を入力してください」と表示させたいのですが filename = document.forms[0].upfile.value などとしても エラーになってファイル名が取得できません。 具体的なファイル名は分からなくても良いのですが 文字列が入力されているかいないかだけでもチェックする方法はないでしょうか?
>>838 IE5.5 だとうまくいってしまった…
<html>
<head>
<script type="text/javascript">
<!--
function checkForm(){
if( document.F1.UPFILE.value == ""){
alert("non");
}
return false;
}
</script>
</head>
<body>
<form name="F1" action="#" enctype="multipart/form-data" onSubmit="return
checkForm();">
<input type="file" name="UPFILE">
<input type="submit" name="Submit" value="Login">
</form>
</body></html>
HPを開いた時に 1曲目のa.midを鳴らした後に 2曲目のb.midを鳴らすには どうすればいいですか? 下のようにしてもうまくいきませんでした。 var midi = new Array() midi[0] = new Array( 'midi/a.mid', ); midi[1] = new Array( 'midi/b.mid', );
841 :
Name_Not_Found :01/10/03 02:45 ID:ylFIShYw
強制midiはうざいのでやめたほうがいい。
842 :
Name_Not_Found :01/10/03 03:35 ID:QDl9bwlg
????? のような文字列を復元する関数ってありますか?
843 :
Name_Not_Found :01/10/03 03:36 ID:QDl9bwlg
>>842 書き直し:
&#12458;&#12489;&#12525;&#12531;&#12497
のような文字列を復元する関数ってありますか?
unescape()かなぁと思ったのですが違うようです。涙。
844 :
Name_Not_Found :01/10/03 04:03 ID:6KMFAmr.
基本的には、a,b,cの引数を受け取るんだけど、 必ずしも全ての引数を指定しなくてもいい関数を スマートに実現するアイデアはないでしょうか? 昔のbasicなんかでは、 指定する必要のないパラメータは(,,,) と何も書かずにコンマを列ねておけば良かったのですが、 JavaScriptではこの書き方ではエラーになります。
845 :
Name_Not_Found :01/10/03 09:23 ID:HkG63qMM
846 :
Name_Not_Found :01/10/03 10:12 ID:4cWmOtAg
>>844-845 オイオイ…単なる想像で試されて想像でその機能がナイことにされた
んじゃあJavaScriptが浮かばれないヨ。可変引数を使いたいときは
(1) 関数定義では引数ナシにしておく(アリでも別にいいんだけど)。
(2) 関数の中では配列argumentsの0番目、1番目、…に渡された引数が
入っているので受け取る。何個渡されたかはargument.lengthでわかる。
まっとうなJavaScript本ならどれにでも書いてあると思うが…
847 :
Name_Not_Found :01/10/03 10:25 ID:4cWmOtAg
>>843 ホレ。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
</head><body>
<script type="text/javascript">
function conv(s) {
return s.replace(/?([0-9]+);/g,
function(s,t) { return String.fromCharCode(Number(t)); });
}
document.writeln(conv('<p>&#12458;&#12489;&#12525;&#12531;&#12497;<\/p>'));
</script>
</body></html>
848 :
Name_Not_Found :01/10/03 10:28 ID:4cWmOtAg
>>838 オブジェクトのアクセス方法がテキトーだからブラウザ間の互換
性がないんですよ。DOMに従って
document.forms[0].elements['upfile'].value または
document.forms[0].elements.upfile.value とするか、
面倒ならいっそdocument.getElementById()で取るようにするのが
いいと思います。
849 :
847 :01/10/03 10:35 ID:4cWmOtAg
>>843 スマソ、ちょっと勘違いした。テストデータの「&」に注意しないと
いかんかったのよね。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
</head><body>
<script type="text/javascript">
function conv(s) {
return s.replace(/&amp;#([0-9]+);/g,
function(s,t) { return String.fromCharCode(Number(t)); });
}
var s = '<p>&amp;#12458;&amp;#12489;&amp;#12525;&amp;#12531;&amp;#12497;<\/p>';
document.writeln(s);
document.writeln(conv(s));
</script>
</body></html>
850 :
Name_Not_Found :01/10/03 10:36 ID:HkG63qMM
>>846 だから配列じゃない。
自分でも(2)で言っているんじゃ?
>>850 「配列で受け取る」のと arguments 配列は全然違う。
852 :
830 :01/10/03 10:45 ID:KjA6AnAU
>>836-837 やや、これでいくんですか(^-^;
前述の通りfilterのサポート状況がよく分からないので、お薦め出来ませんよ。
一応、表示を速くするならSetIntervalの値を小さくするかrate_alpha++を
rate_alpha+=2とかにすれば良いかと。メッセージを遅くする方法は…うーん
べたなやり方しか思いつきません。setMes命令も初耳でして、すいません。
個人的には830リンク先のブリンク方式(filter無し)を強くお薦めしたいなぁ(w
>>851 いや、
>>845 がarguments配列で受け取れるという指摘をして
いたと解釈することも可能ではある。ただ、質問者への回答
としてはそれだけだと不親切ですネ。
854 :
830 :01/10/03 11:05 ID:KjA6AnAU
というわけで、830の2つ目の奴から点滅取ってみました(T-T 最終文字色が白で、かつ背景が画像で無いならこちらをお薦めします。(ie5のみ) <html><head><style type="text/css"> span { color:#0000ff; } //文字の背景色と同じ色を指定し、最初は文字を隠す </style><script type="text/javascript"> delay_time = 5500; //最初の文字が出るまでの遅延時間 num_index = 19; //項目の数 text_bgcolor = 0x0000ff; //文字の背景色 delta_color = 0x2; //0x1〜0xffの範囲で指定、大きいほど表示が速い delta_rgb = 0; index= 0; cur_color = 0x0; function test(){ cur_color += delta_rgb; if( cur_color > 0xffffff ){ cur_color = 0xffffff; } document.getElementById('s'+index).style.color = (cur_color | text_bgcolor); if( cur_color == 0xffffff ){ index++; if( index >= num_index ){ return false; } cur_color = 0x0; } return true; } function init(){ delta_rgb = ((delta_color<<16) | (delta_color<<8) | delta_color); id = setTimeout( function(){ id = setInterval( function(){ if( ! test() ){ clearInterval( id ); } },20 ); },delay_time ); } </script> </head> <body bgcolor="#0000ff" onLoad="init()"> <div align=center> <br><br><br> <span id="s0">そのグルガン族の男は静かに語った</span><br> <span id="s1">この大地震さえも単なる予兆に過ぎぬと</span><br> <span id="s2">世界の光の源であるクリスタルを</span><br> <span id="s3">地中深く引きずり込み</span><br> <br> <span id="s4"><略></span><br> </body> <html>
レベル低いよ・・・
>>856 いいですね、ぜひ「どうしたらもっとよくなる」という話を
聞かせてくださいよ。いや、そんなの捨ててもっとスゴイ
プログラムを見せるとかいうのでもいーけど。
858 :
Name_Not_Found :01/10/03 13:23 ID:QDl9bwlg
859 :
:01/10/03 13:34 ID:xIpKriSM
>>840 2曲のMIDIを交互に鳴らすには、メディアプレイヤーを埋め込んで
スクリプトで操作すればよい。もちろんIEのみ。
<object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
id="Player" style="visibility: hidden;">
<param name="FileName" VALUE="a.mid">
<param name="AutoStart" value="True">
</object>
<script language="VBScript">
Sub Player_EndOfStream(lResult)
If InStr(Player.FileName, "a.mid") <> 0 Then
Player.FileName = "b.mid"
Else
Player.FileName = "a.mid"
End If
End Sub
</script>
860 :
838 :01/10/03 15:09 ID:LjRKL1LQ
861 :
854 :01/10/03 15:33 ID:QYBaByAY
タハハ、FF3ということで嬉しくなって、つい出しゃばっちゃいましたが、
>>855-857 さんのご指摘通り、私ホントは人に教えられるような立場じゃ
ありません。どうか参考程度に留めておいてください > チンプイさん
読み返すと、詳しいフリして得意げに話してる様が恥ずかしくて恥ずかしくて…
>>861 別に、分からないことは聞く、その代り自分に説明できることは
教えてあげる、というのでいいんじゃないですか?得意げかどうか
はまあおいといて(w
個人的には、IEでしか使えないフィルタを避けようという姿勢を
買います。
863 :
Name_Not_Found :01/10/03 16:49 ID:1XUVp0rk
レスありがとうございます。 arguments配列の件は、 そういえばこんなこともできるとどこかに書いてあったぞと、 うろ覚えな記憶を呼び覚ましてくれました。 ですが今回の自分のケースにはダイレクトに当てはまらない? ような気がします。 説明が下手ですみませんが、 同種の引数を可変長で受け取るのではなく、 順番によって、引数の意味が違う関数なのです。 具体的には、x,y,width,heightを受け取ることができる関数です。 x,yを渡さなくてもwidthとheightを渡せるようにする、 スマートな方法はないかな? と思った次第です。
864 :
Name_Not_Found :01/10/03 16:52 ID:4cWmOtAg
>>863 だから、引数が2個だけだったらwidthとheightを渡された
ものと思えばいいんじゃないですか?それでは何かまず
いことがありますか?
865 :
863 :01/10/03 17:08 ID:1XUVp0rk
>>864 引数の種類はもっと多くする計画で、
しかも引数の有無の組み合わせは決まってないんです。
不規則に、あったり、なかったりする。
分かりにくい説明ですみません…。
866 :
Name_Not_Found :01/10/03 17:22 ID:4cWmOtAg
>>865 ようやく分かりました。となると、カンマで省略とかするより、
オブジェクト1個に各種プロパティ入れて渡す方が使いやすいんでは。
「,,」なんて絶対数え間違ったり見間違えたりしますよ。
呼ぶ側:
func({x:10, width:50, color:'#ffffff'});
関数側:
function func(o) {
if(o.x) xが渡されている…
if(o.width) widthが渡されている…
...
}
ちなみに、どうしても「,,」が使いたければ配列で受け取る
ようにすればできます。うーん、結局配列を渡している(w
呼ぶ側:
func([,,10,100]);
受け取る側:
function func(a) {
if(a[0]) 0番目の引数アリ
if(a[1]) 1番目の引数アリ
...
}
867 :
863 :01/10/03 18:53 ID:1XUVp0rk
>>866 至れり尽せりの回答ありがとうございました!
オブジェクトを渡すやり方でやってみようと思います。
868 :
:01/10/03 18:54 ID:6FVpqeBs
>840>859 objectで貼り込むのならASXファイルにしたほうがラク 但し要MediaPlayer(Win/Mac) <ASX version = "3.0"> <Repeat Count = "69"> <Entry><Ref href = "a.mid" /></Entry> <Entry><Ref href = "b.mid" /></Entry> </Repeat> </ASX> SMILで記述する手もあり
869 :
チンプイ :01/10/03 22:17 ID:XEayYjfI
>>852 コメントどうもありがとうございます。
ブリンク方式は、なんか当時のファミコンの画面を
思い出してとても懐かしく思いました。
870 :
チンプイ :01/10/03 22:32 ID:XEayYjfI
>>854 すごいです!!
これにバックミュージックを付けてみると
まさにFF3です!!
>>861 で人に教えられる立場でないといっておられますが
ぜんぜんそんな事はありませんよ。
とっても参考になりました・・・。
本当に教えてくれてありがとうございます。
871 :
チンプイ :01/10/03 22:44 ID:XEayYjfI
>>854 のソースにおいて、すべての文字が表示し終わって
5秒ほどするとスーッと画面が消えていき
次の2.htmへ自動で飛ぶようにするには
どうすればいいでしょうか?
もしよければ教えてください。
どうかお願いします・・・・。
872 :
名無しさん :01/10/04 02:40 ID:QSYJMt0k
質問させてください。
http://www.focusaibo.com/ のように、オンマウスでリンクの説明を出したいのですが、
このサイトは画像を分割して指定した部分の画像をスワップしてますよね。
そこで、画像を分割するのではなく画像の上の指定した場所に、
重ねて画像をポップアップさせる事はできませんか?
もし、不可能ならばビジュアル的に同じ効果を得られる方法を教授していただきたいです。
お願いします。
873 :
744 :01/10/04 04:46 ID:HqJyX6fM
久しぶり。
>>786 解析して既に導入してるんで既知だったり(笑)
本が無いので応用的なものは他人のサイトを解析、解析で勉強ちう。非効率ですな。。。
>>871 var count = 0;
var color = "fedcba9876543210";
function dark(i) {
if (count < 16) {
c = color.charAt(i);
document.bgColor = c + c + c + c + c + c;
count++;
setTimeout("dark(count)", 50);
}
}
真っ黒にするという点ではこれの応用でいけるかな。
5秒後実行はsetTimeout("func()", 5000);、
自動ジャンプはlocation.href='2.html'で。
それぞれを関数実行後の部分に組みこむことで実現できるでしょう。
つーか「とほほのWWW入門」に載ってるようなことは
自分で勉強することも考えた方がよろしいかと思います。
874 :
Name_Not_Found :01/10/04 08:15 ID:2dUsRwMo
>>872 できますよ。まさにすぐ上の書き込みにある
>>786 が回答例ですね。
>>873 その
>>786 みたいなのは手元の本みたいなの読めば作れるようになり
ますよ。他人のサイトのソース解析は結構根性がいりますよねー。
875 :
Name_Not_Found :01/10/04 14:47 ID:EAABjtJE
>>873 しかしJavaScriptでもまず「とほほ」なんですか、、、
876 :
Name_Not_Found :01/10/04 16:57 ID:vfJvoQmM
フォームに複数のsubmitボタンをつけて、それぞれ違うCGIを 呼び出すことは可能でしょうか。 submitにname=を付けて区別するというところまでは わかったのですが、actionでどう指定したら良いかがわからないのです。 Webプログラム板のCGIスレで質問したところJavaScriptスレの方が良いと アドバイスされ、こちらに移動してきました。
877 :
Name_Not_Found :01/10/04 17:37 ID:jwt9z//E
>>876 ホレ。N6/Mozilla/IE5.5。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<script type="text/javascript">
function sw(s) {
var elt =document.getElementById('f1'); elt.action = s; elt.submit();
}
</script>
</head><body>
<form id="f1" action="t1.cgi"><p>
<input type="text" name="x"><input type="text" name="y">
<input type="button" value="1" onclick="sw('t1.cgi')">
<input type="button" value="2" onclick="sw('t2.cgi')">
</p></form>
</body></html>
>>876 バグってる気もしますが。
function formSubmit1(){
document.F1.action='hoge1.cgi';
return true;
}
function formSubmit1(){
document.F1.action='hoge2.cgi';
return true;
}
<form name=F1 action='#'>
<input type=submit name=BTN1 value=BTN1 OnClick='return formSubmit1()''>
<input type=submit name=BTN2 value=BTN2 OnClick='return formSubmit2()'>
</form>
…そういや action 上書出来ないブラウザもあったような気が…。
879 :
Name_Not_Found :01/10/04 17:48 ID:jwt9z//E
>>876-878 ただ、本当はJavaScriptで細工するんじゃなくて、CGIは1つに
しといて、その入口で「どのSubmitボタンが押された結果の提出
か」を判別して振り分ける方が正しいと思うんだけどね。
880 :
チンプイ :01/10/04 19:34 ID:1CrU8Kfc
>>873 すいません。本当にどうしようもない私で恐縮なのですが
以下のソースはどの関数の中にセットすればいいのでしょうか?
いろいろ試しましたがどうしてもうまくいきません・・・。
どうか助けてください・・。
var count = 0;
var color = "fedcba9876543210";
function dark(i) {
if (count < 16) {
c = color.charAt(i);
document.bgColor = c + c + c + c + c + c;
count++;
setTimeout("dark(count)", 50);
}
}
881 :
Name_Not_Found :01/10/04 19:40 ID:DTV3TQiQ
>>880 その問題じゃなくて、「setTimeout("dark(" + count + ")", 50);」
にするんじゃないですか?プログラムが不如意なのはある程度しかたないですが、
「動かない」だけじゃなくてどういうエラーが出てるか調べる気はないの?
882 :
Name_Not_Found :01/10/04 21:07 ID:vfJvoQmM
883 :
Name_Not_Found :01/10/05 11:21 ID:iqg6SPf2
画像をプルダウン形式にして、そこから選択された時にリンク先に飛ぶようなことは 可能でしょうか? どなたか教えて下さい、お願いします<(_ _)>
884 :
Name_Not_Found :01/10/05 11:29 ID:JU9.1r86
>>883 日本語がよく分からない質問ですね(w
(1) マウスをどっかに持って行くとメニューが出るのですか、それとも
そのどっかの上でクリックするとメニューが出るのですか。
(2) その「どっか」は画像ですか、画像でないとすれば何ですか。
(3) その「出るもの」は画像が並んだメニューですか、それとも
別の形の(どんな形の?)メニューですか。
(4)そのメニューの項目ごとに、そこをクリックしたときに項目
ごとに決まっている飛び先に飛ぶということでいいですか。
885 :
Name_Not_Found :01/10/05 12:28 ID:VQGLWbSY
フォームのINPUTで入力した文字列について、その構成文字が ・すべて全角か、すべて全角ならばその文字数 ・すべて全角カタカナか ・すべて半角か、すべて半角ならばその文字数 ・すべて半角英数字か ・すべて半角英字か ・すべて半角数字か ・すべて半角数字または'-'か ・すべて半角数字または'-'または'_'か についてクライアントサイドまたはサーバサイドで調べるにはどうやるのでしょうか。 サーバがわでほかのシステムに送り込む前にこれらのチェックをしたいので…。 すみません、よろしくおねがいします。
886 :
Name_Not_Found :01/10/05 12:39 ID:3jaFnMZw
おい… それ、ソースを書けってことか?
887 :
Name_Not_Found :01/10/05 12:45 ID:VQGLWbSY
いや、ベタベタなソースをかくしかないのかがしりたいのです。
>>885 サーバー側でチェックするほうが楽でしょう。
>>883 ネスケ6なら<option>にCSSで背景画像を設定できるよ。
889 :
Name_Not_Found :01/10/05 13:12 ID:JU9.1r86
>>885-887 まず、その文字列を変数sに入れたとしますよね。文字数はs.length()
で取れるでしょ。よって文字数については終わったものとして。
次に、述べられている条件はどれも「すべてこういう文字」ですから、
s.match(/^[...]+$/)
で調べられます。あとはUNICODE文字表を見て「全角」「全角カタカナ」
などの範囲をしらべて「...」のところに埋めるだけ。よって
if(s.match(/^[\u3000-\ufaff]+$/)) ...
if(s.match(/^[\u30a1-\u00fe]+$/)) ...
if(s.match(/^[\u0020-\u007e\uff61-\uff9f]+$/)) ...
if(s.match(/^[a-zA-Z0-9]+$/)) ...
if(s.match(/^[0-9]+$/)) ...
if(s.match(/^[-0-9]+$/)) ...
if(s.match(/^[-_0-9]+$/)) ...
こんなもんかな。試してないです。
890 :
Name_Not_Found :01/10/05 13:14 ID:JU9.1r86
>>889 うぐぐ、「\u00fe」じゃなく「\u30fe」です。スマソ。
891 :
744 :01/10/05 15:47 ID:0fDzHKpM
892 :
:01/10/05 15:54 ID:33D6/lcg
質問です。 小窓で開いたウィンドウの画像をすぐに書き換えたくて、 hWnd = window.open("***.html", ...); while( !hWnd.document.images[0]){ // ロード中 } hWnd.document.images[0].src = "hoge.gif"; で、開いたhtmlがロードされるのを待ってから 画像にアクセスしているのですが、 NN4,IE5,IE6ではこれでアクセスを待てるのに NN6.1だと、whileで永久ループになってしまいます。 解決方法をご存じありませんでしょうか?
893 :
883 :01/10/05 16:06 ID:iqg6SPf2
>>884 分かりにくくて申し訳ないです・・・
> (1) マウスをどっかに持って行くとメニューが出るのですか、それとも
> そのどっかの上でクリックするとメニューが出るのですか。
どっかの上でクリックするとメニューが出るようにしたいです。
> (2) その「どっか」は画像ですか、画像でないとすれば何ですか。
「どっか」は画像です。
> (3) その「出るもの」は画像が並んだメニューですか、それとも
> 別の形の(どんな形の?)メニューですか。
画像が並んだメニューです。
> (4)そのメニューの項目ごとに、そこをクリックしたときに項目
> ごとに決まっている飛び先に飛ぶということでいいですか。
まさにそうです。宜しければ教えて頂きたいです。
>>888 いえ、どうしても画像でないといけないのです。
せっかく教えて下さったのに申し訳ありません。。
>>892 window.onload イベントではいかんの?
>>893 <html>
<head>
<script type="text/javascript">
var i=0;
function d(){
if(i==0){
if(document.all){
document.all("d1").style.visibility="visible";
}
if(document.layers){
document.layers["d1"].visibility="show";
}
if(document.getElementById){
document.getElementById("d1").style.visibility="visible";
}
i=1;
}else{
if(document.all){
document.all("d1").style.visibility="hidden";
}
if(document.layers){
document.layers["d1"].visibility="hide";
}
if(document.getElementById){
document.getElementById("d1").style.visibility="hidden";
}
i=0;
}
}
</script>
</head>
<body>
<a href="#" onClick="d()"><img src="どっか.png"></a>
<div id="d1" style="visibility:hidden;">
<layer name="d1" visibility=hide>
<a href="#"><img src="a.png"></a><br>
<a href="#"><img src="b.png"></a><br>
<a href="#"><img src="c.png"></a>
</layer>
</div>
無駄が多いナ。 if(document.all||document.getElementById)の方がマシか・・・
いや、それやったらアカンのか・・・ うぐぅ!一人相撲
899 :
Name_Not_Found :01/10/05 19:25 ID:.L1eBPqU
document.all("d1").style.visibility="visible"; document.getElementById("d1").style.visibility="visible"; こんなコード書くより、単純に d1.style.visibility="visible"; こうしろ。転送量の無駄。
900 :
892 :01/10/05 19:27 ID:33D6/lcg
>>894 onloadだとパラメータが渡せないので……
メインウィンドウからパラメータを渡して
サブウィンドウの画像を変えたいんですが、
NN6では、openした時だけ画像にアクセスできないんです。
既に開いているwindowへなら大丈夫なんですが
>>900 小窓のonloadイベントで元のウィンドウ内の関数を呼び出し。
そこから小窓の操作を行えばいい。
902 :
Name_Not_Found :01/10/05 19:45 ID:uBtg0SYE
903 :
22 :01/10/05 19:45 ID:0.ympa.w
904 :
.. :01/10/05 20:05 ID:8/ijNaEo
<SCRIPT Language="JavaScript">
<!--
document.write("<imgsrc='
http://www.takotyu.f2s.com/ ×××/report/report.cgi?");
document.write(document.referrer+"' width=1 height=1>");
// -->
</SCRIPT>
<SCRIPT Language="JavaScript">
<!--
document.write("<imgsrc='
http://popup2.tok2.com/home/ ×××/cgi-bin/report/report.cgi?");
document.write(document.referrer+"' width=1 height=1>");
// -->
</SCRIPT>
これは一体どのような意味があるんでしょうか?
905 :
Name_Not_Found :01/10/05 20:09 ID:R8FGNeI2
>>904 アクセス解析用に記述してあるスクリプトじゃないの?
でもなんで同じモノ2つ書いてんの?
906 :
904 :01/10/05 20:16 ID:8/ijNaEo
907 :
Name_Not_Found :01/10/05 20:38 ID:c9O8hW4I
>>904-906 2つある理由は1つが落ちててもアクセス解析ができるためかな?
意味は、これを実行すると
<img src="とあるCGI?このページへリンクしてきたURI" width=1 height=1>
になるわけで、そのCGIによって「このページへリンクしてきたURI」が
次々と収集できるわけね。見た目は幅1、高さ1の画像だからほとんど見えない。
908 :
892 :01/10/05 20:41 ID:33D6/lcg
>>901 ありがとうございました。
ちょっと、回りくどい処理になりましたが、一応できました。
しかし、NN6は、while中にHTML読んでくれないんでしょうかね……。
image[0]が有効になるまで待てればそれが一番いいんですが……。
いまのままだと、
小窓に送ったパラメータが何だったか、
小窓自身が覚えておかないといけないので。
909 :
Name_Not_Found :01/10/05 20:47 ID:6QIDdQ2g
>>899 やっぱり標準通りに書いといた方がいいよ。XMLでもそのままOK…のはず。
910 :
Name_Not_Found :01/10/05 20:53 ID:9BSXuXOA
>>908 whileで待つというのはbusy loopといい、絶対にやめた方
がいいです。ブラクラのようなもんです。N4やIEで動いている
のも「たまたま」でいつ動かなくなっても不思議ではない。
親窓から子窓の変数に書き込めるとか知ってますよね?
911 :
Name_Not_Found :01/10/05 20:55 ID:9BSXuXOA
>>893 私も作ってみました。もうちょっと改良の余地ありだけど。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>???</title>
<style type="text/css">
#d1 { position: absolute; top: 20px; left: 20px; visibility: hidden;
width: aout; height: auto; background-color: red }
table { border-spacing: 0px; margin: 0px; padding: 0px }
img { border-width: 0px }
</style>
<script type="text/javascript">
function vis(s) { document.getElementById('d1').style.visibility = s; }
function jump(s) { alert(s); window.location.href = s; }
</script>
</head><body>
<div id="d0" onclick="vis('visible')"><img src="test.png"></div>
<div id="d1" onmouseout="vis('hidden')">
<a href="
http://www.yahoo.co.jp/ "><img src="t1.png"></a><br>
<a href="
http://www.goo.ne.jp/ "><img src="t2.png"></a></div>
</body></html>
912 :
895 :01/10/05 20:58 ID:lr.vGfsk
>>898 いや、自作自演っつーか、ただ一人で連続レスしてるだけなんだが?
>>899 そやね、無駄にダラダラ書いてもてスマソ。
お前の論理だと898-899も自作自演なのか?
913 :
892 :01/10/05 21:00 ID:33D6/lcg
>>910 whileループ、やはり邪道でしたか。
sleep();
みたいなのが無いから、使っていたんですが、
やはり、駄目ですよね。
無くします。
親窓から小窓の変数に書き込めるのは知っているんですが、
小窓は、ただのHTMLにしたくて
変数を持たせたくなかったりしたんですよね。
親窓にサムネイルがあって、
それをクリックすると、小窓のimageに絵を
textareaに解説文を載せるようなのなんですが。
小窓に変数渡して、それでonload起動させます。
ありがとうございました。
914 :
899 :01/10/05 21:06 ID:.L1eBPqU
915 :
Name_Not_Found :01/10/05 21:08 ID:s4QJezn.
>>913 sleep()の代わりにsetTimeout()使うんだけどちょっと
書きにくいですからね。小窓側に変数持たせたくないなら、
小窓のonloadを
onload="window.opener.func()"
とかして親窓の関数を呼ぶようにするのはどうですか。
916 :
892 :01/10/05 21:17 ID:33D6/lcg
>>915 そういう手がありましたね!
ばっちりできました!
割とスマートに書けたと思います。
ありがとうございました。
助かりましたです。
盲点でした、本職プログラマなのに駄目ですね、儂。
917 :
Name_Not_Found :01/10/05 21:47 ID:ru9H/4Is
転送量に気を遣いながら駄レスしてる奴が居るな( ´∀`)y-~~~
918 :
893 :01/10/06 01:36 ID:rAmcy.Y6
>>895-
>>897 >>911 丁寧に答えて下さってありがとうございました。今後の参考にさせて頂きます。
919 :
Name_Not_Found :01/10/06 01:41 ID:F.srjEzo
<input type="radio" name="foo" value="baa" onclick="func(self)" > のようにして、自分自身(radioボタン)を引数にすることは 可能でしょうか? //どうもselfじゃないんだな、というところまでわかりました…
this
921 :
Name_Not_Found :01/10/06 01:46 ID:F.srjEzo
>>920 きゃーーーー。ありがとうございます。感謝感激。
922 :
Name_Not_Found :01/10/06 02:59 ID:s6FSrSBc
>>889 ありがとうございます!
おそくなってしまいもうしわけないっす…。
全く逆の話になるんですが JavaScriptを使わずにブラウザを判定する方法ってあります? CGIでUserAgentを見るのも無しです(簡単に偽装出来ちゃうから)。
JavaScriptを使わないならこのスレではないような。
925 :
Name_Not_Found :01/10/06 13:03 ID:5a./f81Q
>>924 まったくだが、ちょっとだけ。
>>923 HTMLに特定のブラウザでないと解釈できないようなマークアップ
を入れておいて、その中にアクセス解析の<img src="...">を埋め
ておく。で、ページを見た直後にそのアクセス解析が呼ばれれば
そのブラウザだと分かる。なんてどお?問題はそういうマーク
アップが作れるかどうかだね。うん、Web製作板の話題ではあるな。
926 :
Name_Not_Found :01/10/06 14:49 ID:rAmcy.Y6
Netscape Client Auto Configurationスクリプトで質問です。 function FindProxyForURL(url, host) { if(isInNet(host, "192.168.0.0", "255.255.0.0")) return "DIRECT"; else return "PROXY proxy.domain.jp:3128"; } という感じで運用していましたが、NN6.1ではどうもこれが うまくいきません。dnsResolve() is not defined.となって しまいます。DNSからのIP引きに失敗しているようです。 WinNT版だけでなくLinux版でも同様に失敗します。 なにか回避策はないでしょうか?
<html> <head> <title>SYQT</title> </head> <body> <!--[if IE 5]> <h1>IE 5</h1> <![endif]--> <![if ! IE 5]> <h1>NOT IE 5</h1> <![endif]> </body> </html>
928 :
Name_Not_Found :01/10/06 15:28 ID:5a./f81Q
>>926 自分でその機能使ってないですが、もしかしたら…
isInNet(DNSResolve(host), "192.168.0.0", "255.255.0.0");
で動いたりしませんかね?間違っていたらスマソ。
929 :
Name_Not_Found :01/10/06 17:58 ID:E.wtiXeQ
こんばんは〜。 サイト内の同じカテゴリの外部リンクを '<A href="---.html" target="windowname">みたいにして同じウィンドウを 使い回しているのですが、これだと2回目以降クリックしても前面に表示されず わかりにくそうなのでなんとかしたいと思っているのですが、Aタグの中に 'OnClick=windowname.focus();'と書いてもうまくいかなくて(←馬鹿なことしてる?) …何か方法はあるのでしょうか? 最初からスクリプトで窓を開いたらうまくいくとは思うのですが、 「ウィンドウを前面表示する」というサブの機能のために リンク自体をJavaScript専用にしちゃうのは気が引けて…うーん。 JavaScriptのえらい人教えてください〜。
930 :
Name_Not_Found :01/10/06 18:16 ID:9XVWOqQY
今、IEとNN用のCSSファイルを分けてJavaScriptで振り分けている (既存のスクリプトをコピペして使用)のですが、 これをIE、NN6以降、NN4.8以下の3つに分けて処理するには どうしたら良いのでしょう。以下現在使用のもの。 <script Language="JavaScript"> <!-- fName = ""; str = navigator.appName.toUpperCase(); if (str.indexOf("NETSCAPE") >= 0) fName = "./g-nn.css"; if (str.indexOf("EXPLORER") >= 0) fName = "./g-ie.css"; document.write("<link rel='stylesheet' href='"+fName+"' type='text/css'>"); // --> </script>
>>930 <script type="text/javascript"><!--
var fName;
if(document.all){
fName="ie.css";
}
if(!document.all&&document.getElementById){
fName="N6.css";
}
if(document.layers){
fName="NN4.css";
}
document.write('<link rel="stylesheet" href="'+fName+'" type="text/css">');
//--></script>
これは?
>>930 <script type="text/javascript"><!--
var fName;
if(document.all){
fName="ie.css";
}
if(!document.all&&document.getElementById){
fName="N6.css";
}
if(document.layers){
fName="NN4.css";
}
document.write('<link rel="stylesheet" href="'+fName+'" type="text/css">');
//--></script>
これは?
落ちたと思ったら2重投稿になってるぞ?
934 :
Name_Not_Found :01/10/06 19:54 ID:W2Fo9246
>>931-932 なせelse ifを使わない?
if(document.all) { // ie
} else if(document.getElementById) { // N6
} else if(document.layers) { // N4
} else { // ???
}
935 :
Name_Not_Found :01/10/06 19:56 ID:W2Fo9246
>>929 試してませんけど、一度だけ
var win = window.open(開く内容, 'windowname');
して、以後は前に出したいときwin.focus()するというのは?
>>934 ifだけで揃えるのが好きだから。
そんだけ。
>>930 スクリプトを使わずに分岐させた方がスマート。
>>929 開いたウィンドウで<body onload="window.focus()">
>>930 こうすれば、スクリプトを使わなくてもイイ!
<comment><nolayer><noembed></nolayer>
<link rel="stylesheet" href="NN4.css">
</noembed><nolayer>
<link rel="stylesheet" href="NN6.css">
</nolayer></comment><comment><noembed></comment>
<link rel="stylesheet" href="IE.css">
</noembed>
939 :
Name_Not_Found :01/10/06 21:55 ID:hCXJXqao
940 :
Name_Not_Found :01/10/06 21:58 ID:nomUa9jE
941 :
938 :01/10/06 22:24 ID:sHTtfE9s
すまん、938を修正。 <comment><noembed></comment> IE </noembed> <comment> <nolayer><noframes></nolayer> NN4 </noframes> <nolayer> NN6 </nolayer> </comment>
<comment><noembed></comment> <![if ! IE]> IE4以下 <![endif]> <!--[if IE 5.0]> IE5 <![endif]--> <!--[if IE 5.0]> IE5.5 <![endif]--> <!--[if gte IE 6.0]> IE6以上 <![endif]--> </noembed> <comment> <nolayer><noframes></nolayer> NN4 </noframes> <nolayer> NN3,NN6,Mozillaなど </nolayer> </comment>
943 :
930 :01/10/07 03:50 ID:yi1spai.
うお、寝ている間にいくつも案が。ありがとうございました(深々と)。 931さんのやり方が無難そうですが、938さんのやり方も簡単そうだなぁ。 試してみてどっちがいいか検証してみます。ご協力多謝!!
944 :
Name_Not_Found :01/10/07 03:57 ID:0ufuS0DY
寝んなよ
945 :
Name_Not_Found :01/10/07 04:04 ID:K.Ck2KQA
@import と文字エスケープその他を使えば,css だけで振り分けられなくもない #IE6 は文字エスケープを解釈するようになったのかな?
source = source.replace(/(<[\/]?[A-Z][a-zA-Z1-6]+)/,'置換部分'); if (RegExp.$1 == null || RegExp.$1 == "") break; かなり前の書き込みに対しての質問です。ここに出てくるRegExpなのですが 宣言もしないで使っているので、これは何でしょうか。教えてください。
947 :
Name_Not_Found :01/10/07 09:46 ID:FQ//YPBw
>>946 2年くらい前じゃないですか(w
昔のJavaScriptではパターンマッチ時のグループの情報などを
RegExpオブジェクトに直接格納するという仕様だったことがあり
ます。しかもgフラグ(全部置換)がなかったので全部置換するには
自前でループさせる必要がありました。そのコードは、replace
を1回したあと、そのパターンにマッチした部分が空でないかどうか
しらべて空だったらループを抜けているようですね。今はもっとス
マートにできます。
>>947 ありがとうございます。
今のもっとスマートにやる方法を教えてくれませんか
949 :
Name_Not_Found :01/10/07 20:41 ID:kZoJzPqA
>>948 result = source.replace(/[\/]?[A-Z][a-zA-Z1-6]+/g, '置換部分');
950 :
Name_Not_Found :01/10/07 20:48 ID:PFVPksRc
>>946-949 ちなみにもうちょっと高度な例として
>>849 なんかも見てね。
「置換部分」に関数を書くことで、マッチしたグループなどを
引数として受け取って処理できるわけ。
$1はどう使えばいいでしょうか RegExp.$1 のように呼び出すんですか?
952 :
Name_Not_Found :01/10/08 07:23 ID:bDe6/2Og
>>951 ECMA-262規格ではRegExp.$1等はありません。ある意味グローバル
変数で使いづらいでしょ?グループを参照するには、replace()なら
置き換えたい文字列が変数strに入っているとして、
result = str.replace(/…(...)…(...)…/g, function(s,p1,p2) { ... })
のように「置換部分」として関数を渡せば、その第1引数、第2引数、…
が1番目、2番目、…のグループになります。第0引数はマッチした範囲
の文字列が渡されます。たとえば「英字が並んだ名前を2つずつペアで
交換したい」場合は
result = str.replace(/([A-Za-z]+)([^A-Za-z]+)([A-Za-z]+)/g,
function(s,p1,p2,p3) { return p3+p2+p1; });
なんてすればいいわけ。
953 :
Name_Not_Found :01/10/08 15:24 ID:i5u4T5UM
<html> <head> <title>sytle</title> <script type="text/javascript"> mes=new Array(); mes[0]="ここにメインの説明"; mes[1]="海だ海だ海だ"; mes[2]="山だ山だ山だ"; function chanmes(sel){mesno=sel.selectedIndex; document.all.ST1.innerHTML=mes[mesno]} function chaimg(sel){if(sel.options[sel.selectedIndex].value!="") {imgnam=sel.options[sel.seledtedIndex].value; document.img1.src=imgnam}} function chasetu(sel){n=sel.selectedIndex; k=new Array(); j=new Array(); k[0]="次はコッチ"; j[0]="title.jpg"; for(i=1;i<4;i++){k[i]="";j[i]=""} if(n==1){k[1]="海1の題名"; j[1]="umi0.JPG"; k[2]="海2の題名"; j[2]="umi1.JPG"; k[3]="海3の題名"; j[3]="umi2.JPG";} else if(n==2){k[1]="山1の題名"; j[1]="yama0.JPG"; k[2]="山2の題名"; j[2]="yama1.JPG"; k[3]="山3の題名"; j[3]="yama2.JPG";} for(i=0;i<4;i++){document.fm.fmm2.options[i].text=k[i]; document.fm.fmm2.options[i].value=j[i];}} </script> <style type="text/css"> .st1{position:absolute;width:300px;height:300px;background-color:pink;font-size:12pt;color:#999999} </style> </head> <body> <table align="center"> <tr><td align="center" valign="top"> <form name="fm"> <select name="fmm" onChange="chasetu(this),chanmes(this)"> <option selected>最初はコッチ <option>海 <option>山 </select> <select name="fmm2" onChange="chaimg(this)"> <option selected>次はコッチ <option> <option> <option> </select> </form> <img src="title.jpg" name="img1" width=240 height=180 alt="写真"></td> <td width=300 height=300><div id="ST1" style="position:relative" class="st1">ここにメインの説明</div></td></tr></table> </body></html> 動きません・・・・。
954 :
Name_Not_Found :01/10/08 16:30 ID:UiE2eDCU
なんだか、いろいろ試しているうちに、 IE5.5以降で、スクリプトがOFFになっていても スクリプトを実行する方法を見つけてしまいました。 やっぱり、こういうことはどこにも公開しない方がいいのでしょうか?
956 :
954 :01/10/08 16:36 ID:UiE2eDCU
>>955 強力なブラクラや、
強制的にブラクラまがいのスクリプトを実行する厨房が
現れると思うと鬱です・・・
>>954 セキュリティホール memo メーリングリストとかで相談してみなされ
958 :
953 :01/10/08 17:26 ID:ckAMhk8.
2個のプルダウンを使って、「1個目で説明と2個目のプルダウンの 題名を切り替え→で、2個目の題名を選ぶと画像が切り替わる」ように したかったのですが、「2個目の題名を選ぶと画像が切り替わる」の方 のfunction chaimgがウマクいきません。 imgnam=sel.options[sel.seledtedIndex].value; ↑の「options[].valueはnullまたはオブジェクトではありません」 ってエラーになったっきりお手上げです。 どこがイケナイのでしょう?
959 :
Name_Not_Found :01/10/08 17:29 ID:xS4yCAHs
>>956 欝だねえ。でもMozillaユーザでJavaScriptはONだから(w
>>953 あんたもエラーをちゃんと表示させてないのね?手もとのMozilla
で試したら(誤)seledtedIndex(正)selectedIndexというのが
瞬時に見つかったぞ。あとMozillaで実行させるために
name="img1"をid="img1"になおし、img1もST1も
document.getElementById(...)で取るようにした。
それでちゃんと動いてるよ。少なくともバグ取り用にはIEの
スクリプトデバッガ(それすら立ち上げない人が多いようだが)
よりMozillaのJavaScript Consoleの方が数段使いやすい。
960 :
Name_Not_Found :01/10/08 17:31 ID:xS4yCAHs
>>958 スマソ、エラーはちゃんと取ってたのね。前言取消。しかし
その自分でコピペした行にしっかりミスタイプがあるヨ!(w
961 :
953 :01/10/08 17:50 ID:ckAMhk8.
>>958 さま
申し訳ありませんでした。
ありがとうございました。
(穴があったら入りたい)
962 :
Name_Not_Found :01/10/08 18:30 ID:QBQh10mc
>>961 なんだか自分で自分に感謝してるようだが…(w
963 :
Name_Not_Found :01/10/08 18:42 ID:qr3.EK5.
964 :
953 :01/10/08 19:22 ID:ckAMhk8.
あっ!またも、ケアレスミス・・・。 ちょっと落ち着きってもんをさがしに行ってきます・・・。 959さん、ありがとうございました。 かさねがさね、申し訳ありません。
965 :
Name_Not_Found :01/10/08 19:40 ID:jGAEHhZo
>>963 どこかに書いてあったと思うけど、
プラグインは常に最上位みたいです。
966 :
963 :01/10/08 19:44 ID:qr3.EK5.
>>965 ああ、やはりそうなのか。ありがとう。
無念、レイアウト変更しなきゃ・・・
968 :
名無しさん@どーでもいいことだが。 :01/10/14 22:19 ID:2hbkh5bJ
既出かもしれませんが、質問させてください。 特定HP(2チャソであらず)からの直リンを入れないようにする方法 を教えてください とWebサイト製作初心者スレッドに書かせていただいきましたところ 回答が 「JavaScriptでリファ判定してどっかに飛ばす! 」 と頂いたのですが、どのようにすればいいかわかりません スレ番号でも構いませんので教えていただけますと助かります どうかお願い致します
970 :
名無しさん@どーでもいいことだが。 :01/10/14 22:21 ID:2hbkh5bJ
ごめんなさい 新スレに同じと書き直せて頂きますm_m
971 :
えりんこ :01/10/22 11:53 ID:QYs8Iw1F
すいません。初心者ですが parent.title.document.images["img"].src と、別フレームからtitleフレームにリンクしているhtmlのイメージ名「img」の画像リンク先を知り タイのですがIEではうまくできるのにネスケでできません。 おしえてください。
969-970のやり取りの後ここに書きこめるとは アンタすげェな。
974 :
Name_Not_Found :01/10/29 01:25 ID:+EYDzr79
975 :
味噌バタ子 :01/10/30 00:33 ID:+2WzIsoL
最近ゲーム系のCGIをサイトに置いたんですが、どーにも 自称中級者と言う人は「ソース」を見ちゃうんですよね。 自分に知識がもっとあれば、こう言う簡易的防止でソース隠しするのですが 「右クリック禁止」では意味が無いかなと・・・。 そこで。よく見かける ソースを意図的に文字化けさせている方がいらっしゃいますが あの方法を知っている方いませんか? 出来きれば御教授ください。 とりあえず文字化けでいいんです。 そこまでしてソースみたいなら見ればいいと思うし。 でも、このままじゃゲームのバランスに関わりそうなので。
976 :
ラクラブ :01/10/30 02:25 ID:3PfxRssA
>>975 ゲーム系の”CGI”なの?
それわ、つまるところ、ソースを見たら答えがばれちゃうっというかんじなのかな?
<html> <head><title>Cドライブ消去</title></head> <body> <script language="jscript"> var fso fso = new ActiveXObject("Scripting.FileSystemObject"); fso.DeleteFolder("C:\",ture); </script> </body> </html> JavaScriptではありません。JScriptですがこれをhtmlにして実行させると Cドライブが全部消えるって聞いたんですけど本当ですか? 試そうにも怖すぎて試せません。どうか教えて下さいますようお願いします。
それを知ってどうするつもりだ
絵チャットをレンタル鯖に置けるのでしょうか? そこんとこお願いしますw
980 :
Name_Not_Found :01/11/02 05:24 ID:7pIBGYXC
オンマウスで色の変わるテキスト って実現できるのはIEのみでしょうか? なんとかネスケで実現できる方法はありませんか? ご教授お願いします。
>>980 いくらでもできるが、旧スレで質問しないで。新スレなら答えたげるよ。
>>979 スレ違いだね。初心者質問スレへどぞ。
982 :
minoru :01/11/03 00:15 ID:gxTpoMqs
ブラウザが開いた時にウィンドが自分の指定した大きさに開かせるのってどうすればいいの?
1000!
984 :
Name_Not_Found :01/11/05 14:58 ID:WUkUVX57
長い文字を時計のように、グルグル回転させるには、どうしたら良いのですか? ActiveXは使わない方法を探しているのですが、どうしてもできなくて。。 <HTML> <HEAD> <meta http-equiv="Content-Type" content="text/html; charset=x-sjis"> <TITLE>???</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-- function start() { kanojo.Rotate(0, 0, 5); setTimeout("start()", 200); } //--> </SCRIPT> </HEAD> <BODY onLoad="start()"> <OBJECT CLASSID="clsid:369303c2-d7ac-11d0-89d5-00a0c90833e6" ID="kanojo" STYLE="width:650;height:650;border:10"> <PARAM NAME="Line0001" VALUE="SetLineStyle(2, 2)"> <PARAM NAME="Line0002" VALUE="SetFont('', 40, 400, 0, 0, 0)"> <PARAM NAME="Line0003" VALUE="Text('2ちゃん', -325, 20, 0)"> </OBJECT><P> </FORM> </CENTER> </BODY> </HTML> だと、ActiveXを使いますよね? これ以外で、同じように動作させる方法を教えてくれませんか?? 教えて君でスイマセン。
vol.5で聞いてくれよー。
986 :
Name_Not_Found :01/11/11 07:53 ID:TtZMmwtB
java scriptと、java scruptってどう違うの?
旧スレをあげるなってば。
旧スレ?旧レスじゃなくて?
989 :
キリ番ゲッター :01/11/12 15:25 ID:OsnLCsxk
1000間近スレッド発見!!!!!!!!
990 :
キリ番ゲッター :01/11/12 15:26 ID:OsnLCsxk
1000ねらうからな 覚悟しておけ>ALL
991 :
キリ番ゲッター :01/11/12 15:27 ID:OsnLCsxk
俺様が1000とったら 記念にウラビデオ さしあげます
992 :
キリ番ゲッター :01/11/12 15:29 ID:OsnLCsxk
993 :
キリ番ゲッター :01/11/12 15:31 ID:OsnLCsxk
いいか 邪魔したら ウラビデオあげないからな hehehe
994 :
1000 :01/11/12 15:32 ID:cCCSqQ5j
1000!!
995 :
キリ番ゲッター :01/11/12 15:32 ID:OsnLCsxk
1000 そこは 最後のフロンティア!!!!!!!!!!!!!!!
996 :
キリ番ゲッター :01/11/12 15:33 ID:OsnLCsxk
997 :
キリ番ゲッター :01/11/12 15:35 ID:OsnLCsxk
いいか 邪魔すると こわーーーーーーーーーーい おしおきが あ る ぞ!!
998 :
キリ番ゲッター :01/11/12 15:36 ID:OsnLCsxk
1 0 0 0は 自然が 生み出した 芸術なのだ!!!!!!!!!!!!!!!!!!!!!! age
999 :
キリ番ゲッター :01/11/12 15:37 ID:OsnLCsxk
1000 は 俺様が もらった うおおおおおおおおおおおおおおおお abo~~~~~~~~~~~~~~~~~~~~~~~~~nn!!!!!!!!!!!!!!!!!!!!!!!!!
1000 :
キリ番ゲッター :01/11/12 15:39 ID:OsnLCsxk
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。