JavaScript

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
ジャバスクリプト
2デフォルトの名無しさん:2007/10/12(金) 18:53:28
自身のウインドウのターゲット名を得る方法を教えてください
3デフォルトの名無しさん:2007/10/12(金) 19:28:11
自身はthis
ターゲットは
this.document.all.item(id:String)
違うな…ターゲット名か?
this.document.getElementByほげほげ(tag:String)
かな?
43:2007/10/12(金) 20:01:05
ウィンドウのターゲット名かw
window.nameでどうだorz
5デフォルトの名無しさん:2007/10/12(金) 22:23:16
板違いだ、ボケ。
6デフォルトの名無しさん:2007/10/12(金) 23:07:32
getElementByが使えるブラウザは糞
7デフォルトの名無しさん:2007/10/13(土) 00:03:12
はいはい移動ですよ〜。

ECMAScript デス 3
ttp://pc11.2ch.net/test/read.cgi/tech/1190160481/l50
8デフォルトの名無しさん:2007/10/13(土) 01:09:04
>>5は突っ込んでほしいのか?
9デフォルトの名無しさん:2007/10/13(土) 01:13:08
>>8
本気で言ってるんじゃないかな。
10デフォルトの名無しさん:2007/10/13(土) 01:18:33
まあgetElementByが出てくるのは板違いっぽいけど。
>>7のスレと重複になるし
11デフォルトの名無しさん:2007/10/13(土) 01:31:22
>>10
WSHでMsxml2.DOMDocumentとか使っててもgetElement〜が登場するよ?
12デフォルトの名無しさん:2007/10/13(土) 01:39:50
でも>>3>>6はMSXMLを想定してないと思うよ
13デフォルトの名無しさん:2007/10/13(土) 06:42:39
>>7
そっちじゃなくてweb制作に誘導しろ。
というかとっとと削除依頼だそうな>>1
14デフォルトの名無しさん:2007/10/13(土) 08:20:45
クリップボードのテキストを取得する方法は?
15デフォルトの名無しさん:2007/10/13(土) 16:58:09
import System.Windows.Forms;
var cb : IDataObject = Clipboard.GetDataObject();
var text : String;
if (cb.GetDataPresent(DataFormats.Text))
    text = String(cb.GetData(DataFormats.Text));
16デフォルトの名無しさん:2007/10/14(日) 02:31:27
それJScriptだから
17デフォルトの名無しさん:2007/10/14(日) 02:47:14
http://www.thinkit.co.jp/free/article/0702/15/4/index.html
>amachang.sayMyNameをsetTimeoutに渡した場合、渡されるのは関数オブジェクトだけで、amachangオブジェクトとは切り離されてしまいます。

↑こんなこといってるけど、
setTimeout("amachang.sayMyName();",1000);
ってやれば、bindつかわなくても大丈夫じゃね?
18デフォルトの名無しさん:2007/10/14(日) 17:09:54
ニコニコ動画にログインするjsをつくりたいのですが
まったく見当がつきません。
ご存じの方教えてください。
19デフォルトの名無しさん:2007/10/15(月) 00:27:50
ジャッキー・スミス内相は、彼女が入閣して以来、彼女を見つめる男性ファンの多さに驚いている
言う。どうやら、彼女が胸の谷間を大胆に見せているのが理由らしい。彼女もそれを認めている。

44歳、2児の母親は7月にロンドンで起きた爆破テロに関する演説を下院で行った。そのときの
彼女の胸元の開いた服装はセンセーションを巻き起こした。
その後のBBCラジオch4「Woman's hour」のインタビューで、彼女は刑務所の雄々しい人たちを
相手にするのも、犯罪取り締まりにおいても、そして対テロ闘争でも(自分が女性だからといって)
何の問題もないと言った。しかし、「これからは、もうちょっと服装には気をつけるようにします」と
付け加えた。

ゴードン・ブラウン首相が行った内閣改造人事では多くの変動があったが、中でもイギリス初の
女性の内務大臣として彼女が任命されたのは最も予想外のことだった。
番組のプレゼンター、イェニー・マレー氏が、彼女の胸の谷間ばかりに気を向けている記者たちに
言いたいことは何かと尋ねると、この44歳のオックスフォード卒業生は声高に言った。
「私は国境を防衛しテロ攻撃から身を守り、そして犯罪を減らすことに専念するつもりです。並行して
少しは服装のことも考えるようにしますが、それは最優先の事柄でもなければ、そんなことで頭が
いっぱいの記者さんたちのためでもありません」。

スミス内相はオックスフォード大在学時に飲み比べをしていた様子が紹介されたことがある。彼女
がオックスフォード大学ハートフォード・カレッジの学生だったとき、バニー・ゲームをしているところ
が写真に撮られたものだ。お酒を飲むのに合わせて、模したウサギの耳を揺らす、学生たちの伝統
的なゲームだ。 (以上、抜粋)

ジャッキー・スミス内相 
http://img.thesun.co.uk/multimedia/archive/00370/snn1102jj280_370372a.jpg
http://img.dailymail.co.uk/i/pix/2007/06_03/jaquismithDM_468x550.jpg

英デイリー・メール:
http://www.dailymail.co.uk/pages/live/articles/news/news.html?in_article_id=486994&in_page_id=1770
20デフォルトの名無しさん:2007/10/16(火) 03:29:48
>>17
今見てきたけど、それ俺も同感。
どういうことだろ、教えてエロい人
21デフォルトの名無しさん:2007/10/16(火) 07:40:11
>>20
文字列で渡せるのは,グローバルスコープのオブジェクトだけ。
22デフォルトの名無しさん:2007/10/16(火) 23:06:09
ある日のPreStar初回の増刊号
http://www.freewebs.com/photoradio/?518235
23デフォルトの名無しさん:2007/10/18(木) 09:35:20
>>21
GJ,エロい人
24デフォルトの名無しさん:2007/10/18(木) 17:09:56
prototype.js使ってるんだけど、

var hoge_obj = new Hoge("hello");
setTimeout(hoge_obj.printMsg.bind(hoge_obj), 1000);

↑こんな感じで書いてるんだが、なぜか”hoge_obj.printMsg.bind is not function ”てエラーが出る…
なにがいけないんだろ…orz
printMsgは

printMsg: function(){
〜処理〜
}

こんな感じでほぼサンプルどおりなのにー
25デフォルトの名無しさん:2007/10/18(木) 18:48:21
>>24
setTimeoutしない場合に、 hoge_obj.printMsg は、ちゃんと呼び出せてるか?
26デフォルトの名無しさん:2007/10/18(木) 22:38:34
ブラウザ上のJavaScriptは板違い
http://pc11.2ch.net/test/read.cgi/hp/1190811747/l50
27デフォルトの名無しさん:2007/10/19(金) 02:16:20
>>26
板違いスマソ

>>25
呼び出せてるから困ってるんだ orz
28デフォルトの名無しさん:2007/10/26(金) 02:27:17
>>24
bind は prototype.js による Function オブジェクトの拡張だろ?
クロージャー使って
var hoge_obj = new Hoge("hello");
setTimeout(function(){return hoge_obj.printMsg()}, 1000);
でおk
29デフォルトの名無しさん:2007/10/28(日) 05:47:53
それはクロージャーとは違うよ
30デフォルトの名無しさん:2007/10/28(日) 16:25:54
クロージャーは勝手に使って欲しかったんだが
ここまで書けば満足か?
(function(){
var hoge_obj = new Hoge("hello");
setTimeout(function(){return hoge_obj.printMsg()}, 1000);
})();
31デフォルトの名無しさん:2007/10/28(日) 16:48:05
何をもってクロージャとは違うと言っているのかよくわかりませんが、
javascriptの関数はどれもクロージャですよ。
32デフォルトの名無しさん:2007/11/08(木) 13:36:54
クロージャーには苦労しますじゃ
33デフォルトの名無しさん:2007/11/16(金) 09:06:26
JavascriptでProlog処理系を作れませんか。
"Rubyで作るProlog処理系"なんていうのを、
見かけますが。
34デフォルトの名無しさん:2007/11/20(火) 06:22:44
>>33
ここにひとつ。
ttp://jlogic.sourceforge.net/
35デフォルトの名無しさん:2007/11/27(火) 18:53:27
グリモンスレはどこでつか。
36デフォルトの名無しさん:2008/01/03(木) 16:36:07
dojoスレありますか?
37デフォルトの名無しさん:2008/01/06(日) 18:05:01
JavaScriptって意外と奥が深いんだな。
38デフォルトの名無しさん:2008/01/07(月) 14:34:56
意外と難しい
39デフォルトの名無しさん:2008/01/08(火) 15:23:46
連装配列とオブジェクトが同じなのはいいアイデアだと思う
40デフォルトの名無しさん:2008/01/11(金) 19:38:31
あまり詳しくないので、ここで質問します。
FireFOX のツールバーに EXCELの拡張ボタンを追加しました。
初期設定コードの記述は

launchProcess : function(path){
var file = Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
file.initWithPath("C:\\Program Files\\Microsoft Office\\Office\\excel.exe");
file.launch();
}

ところが、これでは EXCEL が立ち上がってきません。
先頭部分の記述がおかしのでしょうか?
4140:2008/01/11(金) 22:10:18
質問するスレを間違えたようですので、初心者スレで
質問してきます。 大変失礼しました。
42デフォルトの名無しさん:2008/01/12(土) 13:17:47
ifやfor等の制御構文キーワードを||と&&とarguments.calleeの再帰で代用したのち、
順番に実行する処理を[]の中に書いてセミコロンを駆逐すると、
すべての処理をone-runnerでかけてしまうことに気づいてしまった。
43デフォルトの名無しさん:2008/01/12(土) 21:56:18
それくらい普通だろ
44デフォルトの名無しさん:2008/01/14(月) 20:08:14
one-runner?
45デフォルトの名無しさん:2008/01/15(火) 16:46:26
1回実行されただけで捨てられてしまうプログラム、それがone-runnerだ!
46デフォルトの名無しさん:2008/01/15(火) 20:08:45
>>39
そのシンプルさがJavaScriptの良さだと思っていたんだが、
JavaScriptも静的型にするらしいね。
そうなったらもう使う気しねーな。
47デフォルトの名無しさん:2008/01/16(水) 00:10:09
SchemeはJavaScriptのパクリ
48デフォルトの名無しさん:2008/01/17(木) 15:21:48
知ってる人教えてくれ
<script language="JavaScript">
<!--
    var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    xmlhttp.open("GET", someurl, false);
    xmlhttp.send(null);
    if (xmlhttp.status == 200) {
        // xmlhttp.responseBody を使う
    }
//-->
</script>
…てな感じのをやってるんだが、someurl の対象が shift_jis のファイルなのだ。
このとき、xmlhttp.responseBody を文字列にするにはどうすればいいのだ?
ちなみに xmlhttp.responseText というのは文字化けしてしまって使えないみたいだ。
49デフォルトの名無しさん:2008/01/17(木) 16:31:57
ファイルの中身がwell-formedじゃない場合の話をしてる?
5048:2008/01/17(木) 16:55:14
>>49
XMLどころかHTMLですらないけど…何か?
51デフォルトの名無しさん:2008/01/17(木) 23:09:43
もともとXMLのためのものなんだから、
文句言うんならファイルの中身をXMLにしろ

っていうことじゃね?
5248:2008/01/18(金) 01:17:27
>>51
<?xml version="1.0" encoding="shift_jis" ?>
のXMLファイル(もちろん中身も shift_jis)でも駄目だ。
結局、自分で出来ない事を確かめただけだった…orz
53デフォルトの名無しさん:2008/01/18(金) 07:38:23
>>52
IEがウンコ
54デフォルトの名無しさん:2008/01/18(金) 10:44:28
5548:2008/01/18(金) 19:56:36
押し付けがましいが一応補足
>>52 の場合、xmlhttp.responseText は文字化けするが
xmlhttp.responseXML.xml 等なら文字化けしない
ということのようだ
56デフォルトの名無しさん:2008/01/29(火) 01:32:06
ブラウザを使って連番リストを作成し、txtファイルに書き込むスクリプトを作りました。
しかし、ファイルの書込みモードをラジオボタンを介して変化させようとしたらエラーが出ました。
<script type="text/javascript">
function list() {
var mkfile = String(document.F1.T5.value);
var mode = parseInt(document.F1.T6.value);
var objFso = new ActiveXObject("Scripting.FileSystemObject");
var objFile = objFso.OpenTextFile(mkfile, mode, true);
}
</script>
<form name="F1" action="#">
<input type="button" value="作成" onclick="list()">
<input type="file" name="T5">
<input type="radio" name="T6" value="2" checked>新規書込み
<input type="radio" name="T6" value="8">追記
</form>
ライン6、文字1 オーバーフローしました コード0
modeの値に、きちんと数値が入るよう色々考えましたが動きません。
どこを直せばいいのですか?
57デフォルトの名無しさん:2008/02/02(土) 19:42:39
>>56
<script type="text/javascript">
function radioValue(r) {
    if (r.length) {
        for (var i = 0; i < r.length; i++)
            if (r[i].checked)
                return r[i].value;
    }
    else {
        if (checked)
            return r.value;
    }
    return null;
}
function list() {
    var mkfile = String(document.F1.T5.value);
    var mode = parseInt(radioValue(document.F1.T6));
    var objFso = new ActiveXObject("Scripting.FileSystemObject");
    var objFile = objFso.OpenTextFile(mkfile, mode, true);
}
</script>
58デフォルトの名無しさん:2008/02/02(土) 19:45:09
>>57の一部訂正
    else {
        if (r.checked)
            return r.value;
    }
5956:2008/02/03(日) 14:26:08
>>57
上手く動くようになりました。ありがとう。
60デフォルトの名無しさん:2008/02/04(月) 00:15:09
JavaScriptはプロトタイプ宣言のようなものは無いのでしょうか?
61デフォルトの名無しさん:2008/02/04(月) 00:20:42
myclass.prototype.hello = function () {return "world"};

ってのは置いといて、現行のJSには静的型付がないから
プロトタイプ宣言も糞もない。
62デフォルトの名無しさん:2008/02/04(月) 01:44:04
JavaScriptって、複数の値を返すことできないの?
アドレス参照ができないとなると、どうやって複数の値の中身を変更するの?
63デフォルトの名無しさん:2008/02/04(月) 04:53:00
>>62
http://developer.mozilla.org/ja/docs/Core_JavaScript_1.5_Guide:Defining_Functions
>オブジェクト(すなわち 非プリミティブ値、例えば配列やユーザ定義オブジェクトなど)を
>パラメータとして渡すと、そのオブジェクトへの参照が関数に渡されます。
64デフォルトの名無しさん:2008/02/05(火) 02:16:41
LL言語流だと hashで返せばいいんでない?
65デフォルトの名無しさん:2008/02/19(火) 21:56:53
>>48
結局、>>54のライブラリ(ecl.js )でxmlhttp.responseTextの文字化けって直ったんですか?

上手くできたならサンプル開示してくれませんか?
66デフォルトの名無しさん:2008/02/19(火) 22:01:57
65です。
xmlhttp.responseTextの文字化けでなく、xmlhttp.responseBodyの文字化け

同じような事だと思うけど、訂正。
67デフォルトの名無しさん:2008/02/20(水) 00:39:47
質問させていただきます。
プラウザの入力フォームからキーワードを入力する際に、
たとえば「A」「1」という文字を含むキーワードを入力するとあるテキストが表示され
「B」「2」という文字を含むキーワードを入力すると別のあるテキストが表示される、というようなページをつくりたいと思っています。
プログラムは超初心者のため調べようにもわからないので
このプログラムはどういったもので検索すればいいか、または記入するプログラムなどを書き込んでいただけると非常に助かります。
よろしくお願いします。
68デフォルトの名無しさん:2008/02/20(水) 00:41:52
超初心者なら、先ずは JavaScript の入門書か入門サイトを読もうぜ。
69デフォルトの名無しさん:2008/02/20(水) 00:55:56
ブラウザ上でどうこうしたいときは・・・
+ JavaScript の質問用スレッド vol.62 +
http://pc11.2ch.net/test/read.cgi/hp/1198422525/

ブラウザ以外の処理系や言語自身のお話は・・・
ECMAScript デス 3
http://pc11.2ch.net/test/read.cgi/tech/1190160481/
70デフォルトの名無しさん:2008/02/20(水) 23:45:37
>>48
65です。

Firefoxで以下の様にしたら、文字化けしませんでした。

<html>
<head>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript">
function init(){
 var xmlhttp;
 xmlhttp = new XMLHttpRequest();
 try {
  netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
 } catch (e) {
  alert("Permission UniversalBrowserRead denied.");
 }
 xmlhttp.overrideMimeType("text/html; charset=shift_jis");
 xmlhttp.onload = function(){
  $("res").innerHTML = xmlhttp.responseText ;
 }
 xmlhttp.open("GET", "http://www.2ch.net/");
 xmlhttp.send(null);
}
</script>
</head>
<body onload="init()">
<div id="res"></div>
</body>
</html>
71デフォルトの名無しさん:2008/02/24(日) 20:31:33
正規表現の置換練習機を作ったけど、改行コードの扱いがうまくいきません。
aaabbbcccのbbbを\nと改行したくても\nを文字列としてaaa\ncccと置換してしまいます。
置換文字列を入力するテキストボックスをinputからtextareaに変えて実際に改行を入力すると動きますが、
\nを改行コードとして認識させる方法を教えてください。

<script type="text/javascript">
function replS() {
var strZ = document.F1.TZ.value;
var pat = document.F1.T0a.value;
var rep = document.F1.T0b.value;
strZ = repl(strZ ,pat ,rep );
document.F1.TZ.value = strZ;
}
function repl(str ,str1 ,str2 ) {
var str ,str1 ,str2 ,mach;
if (str1 !== ""){
str1 = RegExp(str1, "gm");
str = str.replace(str1 ,str2);
}
return(str);
}
</script>
<form name="F1" action="">
<textarea name="TZ" onfocus="this.select()" cols=50 rows=10>aaabbbccc
</textarea><br><br>
<input type="button" value="置換" onclick=replS()><br>
<input type="text" name="T0a" size=50 value="bbb">→
<input type="text" name="T0b" size=50 value="\n">
</form>
72デフォルトの名無しさん:2008/02/24(日) 20:53:32
それ、JavaScriptの問題じゃないから。
Web系の板のHTMLスレにでもいきな。
73デフォルトの名無しさん:2008/03/03(月) 14:12:06
JavaScriptをオンラインで1行コード化するサイトとかありませんか?
ブックマークレットや、.jsのダイエット化とかように。
74デフォルトの名無しさん:2008/03/03(月) 14:13:43
そんくらい自分で適当にコード書けよ。
JavaScriptで書けば一石二鳥だろ。
75デフォルトの名無しさん:2008/03/03(月) 14:16:49
>>73
いいの見つけた。
http://subsimple.com/bookmarklets/jsbuilder.htm

>>74
まま、そうなんだけどね。
() {} "" ネスト判断処理、半角SPの判断云々考えたら
あ〜これで一つのネタになるな。 と思えたから
どっかにあるべ〜と思ったの。
76デフォルトの名無しさん:2008/03/03(月) 19:35:22
わかる人教えてくれ

getDateとgetDayで日付と曜日を取得して、その日が第2金曜日以前か以降かを判定するスクリプトってどうすれば組める?

散々考えたけど全然思いつかん
77デフォルトの名無しさん:2008/03/03(月) 19:50:01
馬鹿アルゴリズムで。

今日〜1日とカウントダウンしつつ、
曜日も合わせて変更。
間に何回金曜があるかカウント。
78デフォルトの名無しさん:2008/03/03(月) 20:03:48
今日あるいは直前の金曜日の日付を7で割って、
2なら今日が第2金曜日、>2なら以降、<2なら以前でよくね?
79デフォルトの名無しさん:2008/03/03(月) 20:09:42
>>77
やっぱりこれしかないのかな

>>78
直前の金曜日を出すのが面倒な希ガス
80デフォルトの名無しさん:2008/03/03(月) 20:13:30
>>79
直前の金曜日なんて面倒でもなんでもない。
まあ、たかだかループ31回だから>>77でいいと思う。
81デフォルトの名無しさん:2008/03/03(月) 20:22:34
>>79
剰余
82デフォルトの名無しさん:2008/03/03(月) 20:35:07
77だが、
曜日wを0〜6=日〜土とすると、
今日がw=6なら直前の金曜日は、今日-1
それ以外は、今日-(w+2)
# つまり日曜まで戻して、さらに土、金と戻す。

使う時には1日〜7日の例外処理を忘れずに。

けど人に聞くくらいだから、馬鹿アルゴリズムの方がいいと思う。
デバッグやら保守やら。
83デフォルトの名無しさん:2008/03/03(月) 21:11:50
何がしたいのかよくわからんが、
Math.floor((日付  -  getDay値)/7) で第何週かは出るよ。
84デフォルトの名無しさん:2008/03/03(月) 21:18:52
カレンダー書いてみて、

・1〜7日は無条件で第2金曜日以前
・8〜14日は第二金曜日の可能性あり
・15〜は無条件で第2金曜日以降

だとわかった

8〜14日の場合に判定すればいいみたい
85デフォルトの名無しさん:2008/03/03(月) 21:19:05
何がしたいのかよくわからんが、
そういう問題じゃないw
86デフォルトの名無しさん:2008/03/03(月) 21:21:06
>>85>>83に対して
87デフォルトの名無しさん:2008/03/03(月) 21:55:09
第2金曜日を求めて判定するってのもアリか
88デフォルトの名無しさん:2008/03/04(火) 13:28:11
JavaScriptでリバーシを作りたいのですが、参考になるサイトはありませんか?
89デフォルトの名無しさん:2008/03/04(火) 13:30:50
90デフォルトの名無しさん:2008/03/04(火) 14:27:28
ありがとうございます。
参考になりました。
91デフォルトの名無しさん:2008/03/04(火) 14:33:15
// 周りに相手の駒があれば、進行して行く

なんかかっこいいな
92デフォルトの名無しさん:2008/03/07(金) 03:49:18
>>76
ツェラーの公式
93デフォルトの名無しさん:2008/03/20(木) 01:10:06
IEはローカルの外部jsファイルが読めないのか?
 ライン:2
 文字:1
 エラー:文字が正しくありません。
ふざけやがって・・・!!!
94デフォルトの名無しさん:2008/03/20(木) 01:48:48
ローカルでも普通に読めるよ
95デフォルトの名無しさん:2008/03/20(木) 12:42:09
読めるに決まってるジャンwww
読めなかったら開発者全員怒りでMSに銃を持ち込んでるわwwww
96デフォルトの名無しさん:2008/03/20(木) 13:09:20
文字が正しくないんだろ
97デフォルトの名無しさん:2008/03/20(木) 14:17:19
>>95
うそこけ。
俺は持ち込むつもりは無い。
持ち込んでどうしたいのか分からんが。
98デフォルトの名無しさん:2008/03/21(金) 17:46:33
"<"をreplaceで置換したいんだけど、最初の一個しか変換してくれません。
全部置換するにはどうしたらいいのでしょうか?
<script>
var webmm="<iframe src =http://www.google.co.jp/></iframe>";
document.writeln (webmm.replace(/</i, "{"));
</script>

結果
{iframe src =http://www.google.co.jp/></iframe>
9998:2008/03/21(金) 17:49:08
うぉ。強制変換。
<script>
var webmm="&lt;iframe src =http://www.google.co.jp/>&lt;/iframe>";
document.writeln (webmm.replace(/&lt;/i, "{"));
</script>
です。"&"は本当は半角です。
100デフォルトの名無しさん:2008/03/21(金) 17:49:10
g
10198:2008/03/21(金) 17:53:42
>>100
/&lt;/gi
にしたら出来ました。ありがとうございます。
102デフォルトの名無しさん:2008/04/12(土) 14:27:32
あらゆる環境で動くように作る情報とかが載ってるお勧めのページありませんか?
今はどのブラウザのどのバージョン辺りまでカバーすればよいかとかわからんもんで
103デフォルトの名無しさん:2008/04/12(土) 14:30:04
大して無い
104デフォルトの名無しさん:2008/04/12(土) 22:53:40
javascriptでフォームを追加してるんですが,
その追加されたフォームの値を取得する方法が分かりませぬ

例えば<input type="text" name="text__count__" size="30" id="id_text__count__">
のフォームを__count__をreplaceして追加してるんですが,
document.formname.test3.valueでは値が取得出来ません

どなたかエロい人教えてください
105デフォルトの名無しさん:2008/04/12(土) 23:03:04
document.getElementById("id_text?").value
106デフォルトの名無しさん:2008/04/12(土) 23:07:34
>>105
あっさりできますた
こんな問題で3日間詰まってた俺っていったい・・・
ありがとうございます
107デフォルトの名無しさん:2008/04/13(日) 03:18:22
その3日間何やってたんだw
108デフォルトの名無しさん:2008/04/13(日) 22:15:42
JavaとJSの違いって何?
互換性ないってのは聞いたことあるがどういう関係かわからん。
ゆとりだからわからん。
場違いだったらすまぬ
109デフォルトの名無しさん:2008/04/13(日) 22:36:52
違い云々の前に全くの別物。
110デフォルトの名無しさん:2008/04/13(日) 22:38:11
Java → SunのVM言語
JavaScript → NetscapeのWebブラウザ付属簡易言語
JScript → JavaScriptのMS版
ECMAScript → JavaScriptのECMA標準化版

ぶっちゃけ何の関係も無い。
111デフォルトの名無しさん:2008/04/13(日) 22:40:16
JS=JUSTSYSTEMS
112デフォルトの名無しさん:2008/04/13(日) 23:48:22
JS=JoyStick。おまえの股間についてるモノのことだ。
113デフォルトの名無しさん:2008/04/14(月) 16:42:23
うそつけ・・・
俺のスティックは全然Joyしてないぞ
114デフォルトの名無しさん:2008/04/14(月) 20:22:04
よし、どれ見せてみろ
115デフォルトの名無しさん:2008/04/14(月) 20:50:25
116デフォルトの名無しさん:2008/04/14(月) 21:08:19
>>115
JSというよりJavaに近いな。
117デフォルトの名無しさん:2008/04/14(月) 21:14:33
初めまして。
右クリックをすると警告ダイアログボックスが出るようにする仕方は分かったのですが
2回目以降の右クリックは、出ないようにしたいのですが、可能でしょうか。
もし可能であるなら、プログラムを教えていただけないでしょうか。

どうおよろしくお願いいたします。
118デフォルトの名無しさん:2008/04/14(月) 21:30:25
>>117
<script>
document.oncontextmenu = function() {
alert("うふ〜ん");
this.oncontextmenu = null;
return false;
}
</script>
119デフォルトの名無しさん:2008/04/14(月) 21:43:51
118さん、どうもありがとうございました!
感謝いたします!
120デフォルトの名無しさん:2008/04/14(月) 22:02:58
フォーム内容をprototype.jsのAjax.RequestでPHPにPOSTして結果をIDの中に書き出したんだけど
書き出した内容にあるlightwindowと自作のサムネイルチェンジャーが動作しません
この書き出したフォーム結果はさらにAjax.Requestするものでそれはちゃんと動作してます

リターンする内容のHTMLに直接IDの中に書き込むとちゃんと作動します
jsの読み込むタイミングが悪いのかと思ってヘッダーで読み込んでたlightwindow.jsを
フォーム結果と一緒に書き出すようにしてもダメでした

てな説明で解決策分かりますか?
121デフォルトの名無しさん:2008/04/15(火) 02:14:12
>>110の続き
Rhino → Java製のJavaScript
122デフォルトの名無しさん:2008/04/15(火) 10:39:56
>>121
Rhino はただの処理系だろ
123120:2008/04/16(水) 20:44:52
myLightWindow.activateWindowで解決しました
124デフォルトの名無しさん:2008/04/21(月) 11:23:41
>>122
「ただの処理系」ってナニ?
"実装"ってことならJavaScriptはネスケでの実装だしJScriptだって実装だろう

ブラウザーがないことを処理系って言ってるなら随分前からSquiggleって例があるけど
…ウェブブラウザーじゃないが
125デフォルトの名無しさん:2008/04/21(月) 18:34:56
>>124
Rhino は JavaScript の処理系であって言語ではない
JavaScript はネスケで実装されたものだけを指すわけじゃないし
JScript も IE で実装されたものだけを指すわけじゃない
言語と処理系の違いが分からないならもう少し調べてみてくれ
126デフォルトの名無しさん:2008/04/22(火) 08:27:36
言語と処理系の区別なんていつでもあるわけないだろう。
そもそも「言語」だの「処理系」だのといった言葉の定義からしていい加減なのに。

普通は「辞書上の標準語」と「方言」の区別と似たような使われ方をすると思うけど、
そもそも「辞書上の標準語」が存在しない場合にそんな概念を振り回しても
ただの言葉遊び以上の意味ないでしょ。
127デフォルトの名無しさん:2008/04/22(火) 09:54:10
>>126
JSはともかくESでは処理系と言語仕様の区別は明確だぞ。ECMA舐めんな。
128デフォルトの名無しさん:2008/04/22(火) 12:22:12
>>126
あほかよ
129デフォルトの名無しさん:2008/04/25(金) 02:44:43
質問です。
function login() {
iframe = document.getElementById("inframe");
iframe.contentWindow.document.forms[0].elements('login_id').value = sid;
iframe.contentWindow.document.forms[0].elements('password').value = sps;
}

上記の関数を実行すると「アクセスが拒否されました。」と出てしまい困っています。
行いたい事は、iframeタグ内に表示されている別ドメインのログインフォームにid,passをいれ、
submitしたいのですが、submitする手前のinputタグにid,passを入れる手前でエラーが出てしまいます。

inframe = iframeのid,name
login_id, password = iframe内のinputタグのname
動作環境はIE 6
よろしくお願いします。
130129:2008/04/25(金) 09:34:49
…これはセキュリティー上出来ない仕様となってるんでしょうか。
色々と検証した結果そういった結論になりました。

MacのSafariの場合はローカルHTMLの場合は実行出来るんですよね…
WinのSafariも可能なのかも。
131デフォルトの名無しさん:2008/04/25(金) 11:53:06
>>130
> …これはセキュリティー上出来ない仕様となってるんでしょうか。

その通り。
132ぴよ:2008/04/30(水) 19:59:34
メニューのところを、CSSで、フレーム風にし、スクロールできるようにします。
通常のフレームでは、スクロールして、ある項目をクリックした場合
スクロールした状態が保たれますが、CSSのフレーム風では
スクロールした状態が保たれません。

これをJavaScriptでスクロールした状態を保つことはできますでしょうか?
もしできるのならば、やり方、もしくは、参考サイトを教えていただけないでしょうか。
どのようなキーワードで検索すればいいのかも分かりません。

どうぞよろしくお願いいたします。
133ぴよ:2008/04/30(水) 20:01:51
すみません。一度ageさせていただきます。
134デフォルトの名無しさん:2008/04/30(水) 21:59:45
+ JavaScript の質問用スレッド vol.64 +
http://pc11.2ch.net/test/read.cgi/hp/1208140663/
で似たような話題が出てたよ
今度からはそっちで聞いておいで
135デフォルトの名無しさん:2008/05/08(木) 19:26:52
ローカルファイル限定で
Javascriptからプロセス起動できて
その標準出力をページに埋め込めたりしたら
激しく便利なんだが、無理?
136デフォルトの名無しさん:2008/05/08(木) 19:29:41
やればいいじゃん
137デフォルトの名無しさん:2008/05/09(金) 08:43:10
何でも起動できるようにしたら、著しいセキュリティ汚染
138デフォルトの名無しさん:2008/05/17(土) 00:34:50
※実行注意

<script>
(function(){var n=0x7fffffff;n++;a})()
</script>

このコードでIEが落ちない?
139デフォルトの名無しさん:2008/05/17(土) 15:55:15
同じ処理なら
配列ごとデコードするの乱暴かな
forで一つ一つすべき?
140デフォルトの名無しさん:2008/05/17(土) 15:58:55
>>135
VBSで簡単に
141デフォルトの名無しさん:2008/05/17(土) 16:20:51
>>139
何をどうデコードするのかも書かずにどんな答えを期待してるんだい?
142デフォルトの名無しさん:2008/05/22(木) 03:52:04
画像の読み込みが始まったら(終了か読み込みエラーまで待たずに)
alertで警告画面を出させるような方法ってないですか?
イベントハイドラだと終了かエラーかドキュメント読み込み完了くらいしか
感知できないみたいなので
143デフォルトの名無しさん:2008/05/22(木) 19:53:57
>>142
<img src="http://www...">
<script>alert("渓谷")</script>
144デフォルトの名無しさん:2008/05/24(土) 13:13:47
サイトAの特定箇所の文字列をサイトBで表示したいとき
パーサーを噛まさずにjavascriptだけでやれるでしょうか
教えてください
145デフォルトの名無しさん:2008/05/24(土) 13:19:18
HTMLドキュメントから位置情報と文字列の内容示して取り出せば出来るか
案外簡単だな
146デフォルトの名無しさん:2008/06/02(月) 20:57:53
ttp://sourceforge.jp/projects/ecmascriptlet/
ttp://dragonlady.info/ses
Aptana Jaxer等と同じような機能なのですが、
もし、よろしかったら、ご意見いただけますでしょうか。
サーバ側のJavaScriptは、あまり有用でない気もしているのですが、
ご意見いただけると幸いです。

147デフォルトの名無しさん:2008/06/11(水) 07:31:52
try catchとかのエラーオブジェクトのdescriptionが
%u6307%u5B9A%u3055
とかなのですが、どうやったら解読できるのでしょうか?
148デフォルトの名無しさん:2008/06/11(水) 08:09:17
document.write(unescape("%u6307%u5b9a%u3055"));
149147:2008/06/11(水) 12:10:24
ありがとうございます
150グーグー:2008/06/14(土) 19:29:23
JAVAscriptのサンプルを組み合わせて作ったよ!
JAVAは、楽しんでやりたいよね。。
面白グーグーサイト
http://s1.shard.jp/googoo64/
特撮ヒーロー大集合
http://s1.shard.jp/googoo64/page04.htm
怪人怪獣大集合
http://s1.shard.jp/googoo64/page05.htm
151デフォルトの名無しさん:2008/06/15(日) 11:34:38
Apple御用達
ttp://www.sproutcore.com/
152デフォルトの名無しさん:2008/06/15(日) 21:26:22
↓ここのjsonエディタをダウンロードしてきても、
ローカルでの動かし方がわかりません。
 誰かやりかたおすえて。

http://www.thomasfrank.se/json_editor.html
153デフォルトの名無しさん:2008/06/15(日) 22:17:48
それは「プログラム技術」には関係ない。
154デフォルトの名無しさん:2008/06/17(火) 09:32:40
if文で分岐を作って、分岐したあとに表示されるボタンを分岐ごとに変えたいのですが、
文章を表示させることはできるのですがボタンを表示できません。

今はこんな感じになっているのですが、
<script type="javascript">
var count = 1;
if (count == 1) {document.write("1です");
}else{
document.write("1以外です");
}
</script>
("1です")の部分に<input type="submit" value="更新">  <input type="button" value="削除">  <button type="button" onclick="(window.open('','_top').opener=top).close();">閉じる</button>

("1以外です")の部分に<input type="submit" value="登録">  <button type="button" onclick="(window.open('','_top').opener=top).close();">閉じる</button>
を表示できるようにしたいです。
155デフォルトの名無しさん:2008/06/17(火) 20:23:32
buttonタグとは中々見ないな
156デフォルトの名無しさん:2008/06/17(火) 21:16:32
157デフォルトの名無しさん:2008/06/17(火) 21:26:13
一頃、alcといえば何でもかんでも日帝に結びつける訳だったが、
普通になったんだな。
と思ったらそうでもないか。

ttp://eow.alc.co.jp/%E6%97%A5%E6%9C%AC/UTF-8/?ref=ex&exp=KI-00969&dn=1846514&dk=JE&pg=2
158デフォルトの名無しさん:2008/07/22(火) 21:50:57
TextSS
159デフォルトの名無しさん:2008/07/23(水) 10:10:48
★スロットの絵柄は「0」〜「9」まで変化する。★絵柄は3段構成。
★スタートボタンを押すと、各絵柄が一斉に動き出す。
★各絵柄の下のストップボタンを押すと絵柄が止まる。
★各絵柄がすべてそろうと、大当たりとしてページの背景色が変化する。
★大当たり後、再度スタートボタンを押すと、背景色は元の色にもどる。
★すべての絵柄が止まってないのに、大当たりの背景色変化が起こらないようになっている。
この条件でスロットを作りたいのですが、スタートボタンを押したら1つしかスロットが回転しません
どのように改善すればいいでしょうか?
ソースは
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7490.txt

よろしくお願いします
160デフォルトの名無しさん:2008/07/23(水) 20:51:43
なつやすみの宿題はとしょかんにいくといいよ!
161デフォルトの名無しさん:2008/07/24(木) 16:05:37
>>159
適当に作ってみました。
※chageSlot関数はかなりいい加減です(遊んでます...)
動作テスト:http://www1.k-rent.net/heikuu/159/index.html
ソース:http://sakuratan.ddo.jp/uploader/source/date87566.txt
162デフォルトの名無しさん:2008/07/25(金) 23:30:30
すみません。お聞きしたいのですが、

1メガのjsファイルがあったとします。
これをブログの全部の記事毎に呼び出してる状況だとして、物凄く重いので、改善する方法はありますでしょうか?

たとえば、別の場所に一旦呼び出して、実行コマンド?だけ記事に呼び出すとか。
163デフォルトの名無しさん:2008/07/26(土) 00:39:54
>>162
フレームに分けるとか。
jsのフレームは非表示にする。
164デフォルトの名無しさん:2008/07/26(土) 06:14:39
>>162
記事更新のajax化
165デフォルトの名無しさん:2008/07/28(月) 01:47:56
JavaScriptってどのくらいのことができるんでしょうか?

C#で簡単なツールを書いてるんですが、.NETを入れたくない
という人もいて代わりになるのであれば移行しようかと思ってます。

今実現したいのが
・ローカルにおいてあるテキストの読み込み
・上記で読み込んだテキストに関連する画像情報が書かれているので
それを読み込んで表示
・表示した画像を1枚絵にする。

とかなんですが・・・・
166デフォルトの名無しさん:2008/07/28(月) 02:26:25
>・表示した画像を1枚絵にする。

JS では基本バイナリを弄ることはできないので_
167165:2008/07/28(月) 02:43:20
>>166
そうなんですか

なんか個別に表示して重ねたりは配置の問題だけなので
できそうでしたが・・・ザンネンorz
168デフォルトの名無しさん:2008/07/28(月) 09:04:13
ブラウザのDOMを操作する以上のことはするなというのがこれまでの常識。
スタイルシートの範疇で出来ると思ったらやってみたら。
ただFirefox3のjavascriptのスピードを見たらもう少し何かやらせてもいけるような気がする。
169デフォルトの名無しさん:2008/07/28(月) 09:19:48
>>165
んー、
> ・ローカルにおいてあるテキストの読み込み
の時点でHTAとかXULアプリケーションとかに
なるだろうから、がんばればできるんじゃないの。
Mozillaならバイナリが扱えるXPCOMもいろいろそろってるし。
HTA/JScriptの場合、FileSystemObjectだとバイナリが
扱えなかったような気がするけど、ほかのActiveXで
そういうことができるのとかどっかにありそう。
170デフォルトの名無しさん:2008/07/28(月) 09:44:05
ブラウザのjavascriptかそれ以外の環境で動く派生言語かは分けて考えたほうがいいだろうね。
.NETに戻ってもいいならマニアックなJScript.NETなぞございます(笑
171デフォルトの名無しさん:2008/07/28(月) 10:03:33
flash側の外部に公開されてない関数をjavascriptから呼びたい
これができたらiknowを完全にキーボード操作で楽しんだりflashが使えない携帯からできるのに
まぁ普通に考えてセキュリティ面でずたぼろになるから無理な要求だけど
172デフォルトの名無しさん:2008/07/28(月) 11:46:38
>>165
JScript@WSHじゃ駄目なんですか?
173デフォルトの名無しさん:2008/07/28(月) 11:57:30
javascriptの実装を統一して欲しいよまず。
174デフォルトの名無しさん:2008/07/28(月) 16:32:30
統一されたら、言語の進化競争が止まるだけで、メリットは無いよ
175デフォルトの名無しさん:2008/07/28(月) 17:41:42
クロスブラウザめんどい
176デフォルトの名無しさん:2008/07/28(月) 19:11:39
言語が1つになって寡占的な支配を行ったら、
言語の改善や、新しい機能の取り込みがしやすくなって、開発は活発になるだろう。
結局方向はバラバラになり、実装はゴテゴテになり、
異なるブラウザ間の差異が異なるバージョン間の差異になるだけ。Java や AS のように。
次世代の Unified JavaScript を管理する俺たちの組織だけはそうはならない、とは俺は思えない。
結局、2つ以上のブラウザが、双方ともユーザに叩かれる状況が望ましい。
177デフォルトの名無しさん:2008/07/28(月) 20:54:44
FireFox3以降で リンク隠すことは可能ですか?ブラウザの左下の表示のリンクです。
178デフォルトの名無しさん:2008/07/28(月) 21:35:07
俺としてはflashさえ消えさってくれれば今のままで十分なんだがな
ユーザコードから触れないから、折角キーボードオンリーでできる環境をつくっても
flashがでてくるだけでぶち壊し
179デフォルトの名無しさん:2008/07/29(火) 02:55:22
flashを使わなければよい
180デフォルトの名無しさん:2008/07/29(火) 05:14:31
というか、むしろJavascriptはActionScript化してます。
181デフォルトの名無しさん:2008/07/29(火) 10:12:17
>>180
kwsk
182デフォルトの名無しさん:2008/07/29(火) 11:04:04
まぁadobeはflashpluginのソースを公開汁ということだ
183デフォルトの名無しさん:2008/07/29(火) 12:39:17
>・表示した画像を1枚絵にする。
バイナリではないけど、画像情報をBASE64にすれば、
img.src="data:image/png;base64,ヘテヘテ==";
で画像は表示できるかも
PNGのアルファとか利用して重ねるとか?
184デフォルトの名無しさん:2008/07/29(火) 12:40:19
>>183
いや完全に一枚絵にしたいんです・・・
185デフォルトの名無しさん:2008/07/29(火) 12:52:56
>>183
そんな書き方できるんだ・・・。
Base64で各画像データを変数に格納して、imgのsrc属性に連結して渡せばいけるかな?
186デフォルトの名無しさん:2008/07/29(火) 16:34:00
>>185
ところがBase64画像をimgタグにぶち込むのはIE"のみ"対応していないという罠

だった気がするんだけど最近のIEはできるようになったんだろうか
187デフォルトの名無しさん:2008/07/29(火) 18:28:36
ブラウザ使っていいならcanvas使えよ
188デフォルトの名無しさん:2008/07/29(火) 19:24:05
dataプロトコルにはIE8から対応。
カスタムプロトコルハンドラを作って公開している人がいるので、クライアントにインストールできるなら検討の余地はある。
189デフォルトの名無しさん:2008/08/01(金) 14:15:10
ローカル動作のJScriptでソースファイルの分割をする方法はないでしょうか
行数が1000超えて把握しにくくなってきたので機能毎に分割したいのですが。
モノはIRCクライアント、LimeChat2(2.25以降)のスクリプトです。
190デフォルトの名無しさん:2008/08/03(日) 17:00:28
prototype.jsを使って、
 1 C:\hogehoge\local.htm(ローカルのファイル)からWeb上のhttp://www.hoge.hoge/sample.htmを読み込む
 2 sample.htmをデータ処理
 3 $("hogehoge").innerHTMLでlocal.htm出力

こんな感じのスクリプト組んだんだが、IEだとうまく動くけどFirefoxだとWeb上のデータが読み込めない。
ぐぐって見たけどブラウザの仕様らしいということはわかったが解決策がわからない。

知ってる香具師いる?
191デフォルトの名無しさん:2008/08/03(日) 17:42:11
今試す気起きんが Firefox だとローカルから XMLHttpRequest で Web 上のファイル取得できないんだっけか?
192デフォルトの名無しさん:2008/08/04(月) 12:12:13
ブラウザの仕様なら無理なんじゃないの。
193デフォルトの名無しさん:2008/08/04(月) 14:05:47
>>191
自分が試す気が起きない程度の問題に
君のために他人が試してくれると思える
その能天気さはどこから来ている?
194デフォルトの名無しさん:2008/08/04(月) 16:19:44
>>193
俺は別に Web 上のファイルが取得できようができまいがどうでもいいから試さない
やりたいと言っている 190 が試せばいいんだし、暗にそう言っている
そんなこともわからないのか
195190:2008/08/04(月) 20:23:06
なんか人違いされてるな・・・

Firefoxのエラーコンソール見たら
>セキュリティエラー: file:///C:/hogehoge/local.htm のコンテンツが http://www.hoge.hoge/sample.htm からデータを読み取ることは禁止されています。
と出たので多分Firefoxからはアクセスできないみたい。

あきらめます
196デフォルトの名無しさん:2008/08/05(火) 00:33:53
セキュリティーポリシー緩めればアクセスできるよ。
197デフォルトの名無しさん:2008/08/08(金) 01:28:49
IE7で、<select>で選択されている<option>の値をとるにはどうしたらいいの?
.valueだと取れないみたい。
198デフォルトの名無しさん:2008/08/08(金) 16:46:48
どうしようもないよ
199デフォルトの名無しさん:2008/08/09(土) 05:11:38
不ツーは selected があるか見てく
200デフォルトの名無しさん:2008/08/10(日) 03:04:35
IE なんか見捨てろよ
201デフォルトの名無しさん:2008/08/10(日) 07:29:47
IE がここまで嫌われるに至った道を Fx で実践するわけですね、分かります
202デフォルトの名無しさん:2008/08/10(日) 11:51:34
IE叩いてる奴はNN4とか触ったことないだろ
203デフォルトの名無しさん:2008/08/10(日) 14:36:39
NN4とか久しぶりに聞いたなー
204デフォルトの名無しさん:2008/08/10(日) 15:12:48
NCSA Mosaic
205デフォルトの名無しさん:2008/08/11(月) 21:02:06
Fx使いでさえNN4は確かに失敗作だと思うが
しつこく未だにNN4とか出してくるやつは初期IEと比べたらいい。
206デフォルトの名無しさん:2008/08/12(火) 06:30:35
NN4 が叩かれる理由 → 普及したから
IE6 が叩かれる理由 → 普及したから
次はなんだろうね
207デフォルトの名無しさん:2008/08/13(水) 21:32:17
Firefox3
208デフォルトの名無しさん:2008/08/14(木) 00:18:37
宣伝しにきたよ。
■■みんなでサイトつくろうぜwwwwwwww■■

「お前ら一緒にサイト作ろうぜwwwww」
「2ちゃん越えるサイト作ろうぜww」

「仕事無いんだ・・・・・・」

「やろうぜ!」

「みんなでサイトつくろうぜwwwww」

http://gacco.o0o0.jp/
http://ex14.vip2ch.com/test/read.cgi/part4vip/1218612197/
今日トップ絵作ったんだぜ!
興味沸いたらきてください!
209デフォルトの名無しさん:2008/08/14(木) 07:36:17
こういうので成功するのは、一人本当にがんばるやつが居た時だけだな。
210デフォルトの名無しさん:2008/08/14(木) 17:36:52
「みんなで」とか言い出す奴にそんな奴はいない
211デフォルトの名無しさん:2008/08/14(木) 17:58:38
とりあえずNGワードに設定してすっきりした
212デフォルトの名無しさん:2008/08/23(土) 18:45:37
変数名に2バイト文字っていつから使えるようになったの?

どっかのブログに出来るってことが書いてて
試してみたら、動いてビックリした
213デフォルトの名無しさん:2008/08/23(土) 18:49:11
XMLも1.1から要素名などに非ASCII文字が使えるようになったことだし。
214デフォルトの名無しさん:2008/08/23(土) 22:05:24
Unicode だからマルチバイトな
215デフォルトの名無しさん:2008/08/26(火) 01:05:20
>>213
普通にXML 1.0から使える
1.1で使えるようになったのは1.0時点で未割り当てだった文字と現在未割り当ての文字
216助けて下さい。:2008/08/27(水) 11:20:01

下記のjspで、セレクト1のコンボボックスが変更された時、
関数changecmb1で、セレクト2のselectedIndexを取りたいのですが、
旨く取れないのです。取り方を教えて下さい。
本は読んだのですが、分かりませんでした(/_;)
<html>
<head>
<script type="text/javascript">
function changecmb1(obj) {
index = obj.selectedIndex;

cmb2index = document.form.cmb2.options.selectedIndex;
↑旨く取れないのです。
alert("セレクト2のindex="+cmb2index);
}
217助けて下さい:2008/08/27(水) 11:21:11
</script>
</head>
<body>
<div id="title" class="title">${title}</div>
<br/>
<span class="nece">test</span>
<html:form action="action1">
<table>
<tr>
<td nowrap>セレクト1<span class="nece">※</span></td>
<td>
<f:code codeName="code1" var="cmb1List" />
<html:select property="select1" onchange="changecmb1(this)">
<html:option value=""></html:option>
<html:optionsCollection name="cmb1" label="value" value="key"/>
</html:select>
</td>
</tr>
<tr>
<td nowrap>セレクト2<span class="nece"> </span></td>
<td>
<f:code codeName="code2" var="cmb2List"/>
<html:select property="select2">
<html:option value=""></html:option>
<html:optionsCollection name="cmb2" label="value" value="key"/>
</html:select>
</td>
</tr>
</html:form>
</body>
</html>
218デフォルトの名無しさん:2008/08/27(水) 12:40:23
>>216
jspでなく出力されたhtmlを貼り付けた方が良いと思うのだけど、
多分、document.formのformが<form>のname属性だっていうところじゃね?
<html:form action="action1" name="test">
cmb2index = document.test.cmb2.options.selectedIndex;
なら動く気がするけど。

それかdocument.forms使ったら?
219デフォルトの名無しさん:2008/08/28(木) 00:42:07
JavaScriptでおマンコをクチュクチュする方法を教えてくれませんか?
220デフォルトの名無しさん:2008/08/31(日) 22:18:49
それはできまへん。
221デフォルトの名無しさん:2008/09/01(月) 17:50:12
1.5から出来るよ
222デフォルトの名無しさん:2008/09/01(月) 19:01:45
JScript5.6はバージョンいくつ相当ですか?
223デフォルトの名無しさん:2008/09/02(火) 18:36:27
相当しなくね?
224デフォルトの名無しさん:2008/09/03(水) 00:19:39
質問です。
Math.random()を使って乱数を取り出しているのですが、
乱数が偏ってしまっている感じがします。

dice = Math.floor(Math.random()*6) + 1; // こんな感じ

偏りの無い乱数を得るいい方法はありませんか?
225デフォルトの名無しさん:2008/09/03(水) 00:49:29
もっと大きな素数かけて剰余取った方がいい。
それだと上位ビットしか使えてない。
226デフォルトの名無しさん:2008/09/03(水) 01:01:10
回答ありがとうございます。
dice = Math.floor(Math.random()*10000) % 6 + 1;
のようにすればいいわけですね。

ところで、大きな素数というのはどの程度を用いればいいのでしょうか
227デフォルトの名無しさん:2008/09/03(水) 02:05:35
激しく無駄のような気がする
228デフォルトの名無しさん:2008/09/03(水) 02:15:42
というか“偏ってしまっている感じ”って何だ?
100000回とかちゃんとテストして1〜6に有意な差が出たのか?
229デフォルトの名無しさん:2008/09/03(水) 02:35:08
>>228
うーん、たとえば↓を実行した数値を眺めると
同じ数値が連続したり特定の数値ばかり偏る……ような気がします。
こんなものなのでしょうか

<!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"></head>
<body>
<script language="JavaScript">
<!--
function run(){
count = document.main.count.value;
for(i=0;i<count;i++){
dice = Math.floor(Math.random()*6) + 1;
var log = document.getElementById('log').value;
log += dice;
if(i%20 == 0){log += "\n";}
document.main.log.value = log;
}
}
-->
</script>
<form name="main">
試行回数:<input type="text" size="3" name="count">回
<input type="button" value="実行" onclick="run()"><br>
<textarea name="log" id="log" rows="4" cols="64"></textarea>
</form>
</body></html>
230デフォルトの名無しさん:2008/09/03(水) 03:35:04
というか、お前の使っている実装での結果を張れw
231デフォルトの名無しさん:2008/09/03(水) 04:12:18
それ、1−6の範囲の話だろw
232デフォルトの名無しさん:2008/09/03(水) 08:21:12
眺めてどうすんだよ…

<!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"></head>
<body>
<script language="JavaScript">
<!--
function run(){
aho = [null, 0, 0, 0, 0, 0, 0];
count = document.main.count.value;
for(i=0;i<count;i++){
++aho[Math.floor(Math.random()*6) + 1];
}
document.main.log.value
= '1:'+aho[1]+' 2:'+aho[2]+' 3:'+aho[3]+' 4:'+aho[4]+' 5:'+aho[5]+' 6:'+aho[6]
}
-->
</script>
<form name="main">
試行回数:<input type="text" size="3" name="count">回
<input type="button" value="実行" onclick="run()"><br>
<textarea name="log" id="log" rows="4" cols="64"></textarea>
</form>
</body></html>

Chrome で1億回実行した結果↓

1:16660586 2:16665434 3:16668868 4:16667059 5:16663135 6:16674918

偏りがあるようには見えんな。
233デフォルトの名無しさん:2008/09/03(水) 08:23:40
Chrome を見せたかっただけかよww
234デフォルトの名無しさん:2008/09/03(水) 08:26:06


おじさん。かっこ悪い。

235デフォルトの名無しさん:2008/09/03(水) 10:49:45
>>224
こういうの使ってみるとか
http://homepage2.nifty.com/magicant/sjavascript/mt.html

WSHの実装だと>>224でもそんなに偏ってるようには見えなかったけどなあ
236デフォルトの名無しさん:2008/09/03(水) 11:54:37
>>232
あー、トータルで綺麗に分布しても局地的に偏ってたら意味ないというか
特にゲーム的なものを作る場合、数字の偏りが結果にモロに出るので嫌な感じです。
試行回数が多いわけでもなし。

大きな素数掛けて剰余取っても偏りがあまり取れない……まあ、こんなものだと諦めます。
回答ありがとうございました
237デフォルトの名無しさん:2008/09/03(水) 12:03:00
君が必要としてる分布はこうすれば確実だよ(笑
for (int i=0; i<loop; i++)
  for (int j=1; j<=6; j++) { }
238デフォルトの名無しさん:2008/09/03(水) 12:03:07
たぶん1〜6を配列に入れてシャッフルするといいよ
239デフォルトの名無しさん:2008/09/03(水) 12:13:39
countが6だったらそれしないと無理ですな
240デフォルトの名無しさん:2008/09/03(水) 12:25:35
>>224がランダムってことを理解してないだけだろうな。
241デフォルトの名無しさん:2008/09/03(水) 16:13:19
ここいいな
242デフォルトの名無しさん:2008/09/03(水) 20:29:34
まあ文系だとこんなもんだよね
243デフォルトの名無しさん:2008/09/03(水) 21:23:27
>あー、トータルで綺麗に分布しても局地的に偏ってたら意味ないというか

「偏る」とはどういうことかをまったく理解していないわけだね。
244デフォルトの名無しさん:2008/09/03(水) 21:25:24
へんるぐらい知ってますよ!
245デフォルトの名無しさん:2008/09/04(木) 06:55:00
乱数使ってといて「ランダムなのが気に食わない」ってアホかよ…
246デフォルトの名無しさん:2008/09/04(木) 11:49:07
その辺にしておいてやれよ、これ以上弄ったらスレに帰ってこなくなっちゃうだろっ。
247デフォルトの名無しさん:2008/09/05(金) 05:33:16
1秒ごとにAがBになって、またAになってBになって、以後ずっとABABABABABABABABA・・・・・・・・・・・・・・・・・・・・・・・・・
はどうやりますか
248デフォルトの名無しさん:2008/09/05(金) 06:53:14
kouyarimasu
249デフォルトの名無しさん:2008/09/05(金) 11:05:04
>>247
setTimeout
innerHTML
250デフォルトの名無しさん:2008/09/05(金) 16:18:57
聖書のイエス物語は四人の人が書いてて少しずつ違う。
同じ文章は普通に書いて、違う文章はgetHours使って、時間帯によって変わるように出来るかな。
251デフォルトの名無しさん:2008/09/05(金) 16:57:35
できるよ。
252デフォルトの名無しさん:2008/09/06(土) 01:32:05
>>251
そこは「イエス」だろ。
253デフォルトの名無しさん:2008/09/06(土) 03:49:31
<SCRIPT language="JavaScript">
<!--
function ttlValue() {
txt = 2;
ttl = 0;
for(i=0; i<txt; i++) {
if(document.nForm.elements[i].value != "") {
ttl += eval(document.nForm.elements[i].value);
}
}
document.nForm.result.value = ttl;
}
function numOnly() {
m = String.fromCharCode(event.keyCode);
if("0123456789\b".indexOf(m, 0) < 0) return false;
return true;
}
//-->
</SCRIPT> <input type="text" name="t1" onkeyDown="return numOnly()">+<input type="text" name="t2" onkeyDown="return numOnly()"><input type="button" value="=" onClick="ttlValue()"><input type="text" name="result" size="20">
254デフォルトの名無しさん:2008/09/06(土) 05:08:34
>>253
output="tl1+tl2"で桶
255デフォルトの名無しさん:2008/09/06(土) 22:04:30
Selectの項目を選ぶと、そのアイテムの情報をinnerHTMLで書き出しして表示させているのですが、
そのSelectの項目の各々を比較するために、
Radioボタンで書き出し場所を同一HTML内の別TableにABCそれぞれinnerHTMLで書き出すにはどうすればいいんでしょうか?

RadioボタンをA,B,Cと作ってvalueをa,b,cと設定してif (value = a)等でABCそれぞれのinnerHTML書き出すようにしたのですが、
if (value = a)ならAのみ、bならBのみ、cならCのみしか変更されません。

ご教授お願いします。
256デフォルトの名無しさん:2008/09/06(土) 23:38:37
状況とやりたい事がいまいち分からない
最小限ソース出してくれ
257デフォルトの名無しさん:2008/09/07(日) 01:31:17
<head>
</head>
<body>
<form name=frm>
<select name=slt>
<option value=1>データ1
<option value=2>データ2
</select>
表示領域1変更<input type=radio name=radiogrp value=1 checked>
表示領域2変更<input type=radio name=radiogrp value=2><br>
<table border=1>
<tr>
<td>表示領域1</td>
<td>表示領域2</td>
</tr>
</table>
</form>
</body>

例えばこんな風で、表示1変更になってる時は領域1にデータ1の内容を表示、
表示2変更の時は領域2に・・と言う風にしたいのです。
(データ1とデータ2を比較したいため)

のですが、1変更になっていても2変更になっていても、どちらか片方しか変更されません。
258255,257:2008/09/07(日) 02:12:19
すいませんすいません。
自己解決しました。

document.frm.jobcopy[0].checked == true
の[0]が抜けてました。
259デフォルトの名無しさん:2008/09/07(日) 11:18:14
HTMLがらみの質問はWeb板でやってくれーとか思ったり
260デフォルトの名無しさん:2008/09/07(日) 14:49:27
JavaScriptでおマンコをクチュクチュして潮吹きさせる方法を教えてください。
よろしくお願いします。
261305:2008/09/07(日) 21:34:40
java script で数年は食べていけるのでしょうか?
262デフォルトの名無しさん:2008/09/08(月) 01:13:58
味に飽きなければ何年でもいけるよね
まぁ味付け次第じゃないかな
263デフォルトの名無しさん:2008/09/08(月) 10:40:03
V8やべぇな…
264デフォルトの名無しさん:2008/09/08(月) 11:04:05
C実装のバイナリ版はどこかにないですか?(win32)
265デフォルトの名無しさん:2008/09/08(月) 11:24:35
>>264
ドトネトフレームワークにjsc.exe付いてるだろ
266デフォルトの名無しさん:2008/09/08(月) 11:27:05
Cから呼びたいって意味ならjscで実行ファイル化してパイプでやりとりするか、WSH組み込め
IRCクライアントにJScriptをアプリのスクリプトとして実装してるのがあるからできるはず
267デフォルトの名無しさん:2008/09/08(月) 11:35:01
アホか。JScriptは今後サポートしない方針なんだよw
268デフォルトの名無しさん:2008/09/09(火) 00:19:45
JavascriptのDocument.write()後のHTMLを表示する方法ってないですか?
269デフォルトの名無しさん:2008/09/09(火) 00:38:24
innerHTML
270デフォルトの名無しさん:2008/09/15(月) 21:33:07
IEでウィンドウの大きさ変えたときにwindow.document.body.clientWidthで幅取得してんだけど
これなんで、開いた時の幅しか見れないわけ?
271デフォルトの名無しさん:2008/09/16(火) 01:32:45
目障りだからウィンドウの幅なんか変えるなよ
272デフォルトの名無しさん:2008/09/17(水) 06:32:52
jsonで2つのプロセスの通信させようとしています
jsonにはポインターや配列の情報をやりとりする枠組みはあるのでしょうか?
配列を全部テキストに変換しないとだめでしょうか?
273デフォルトの名無しさん:2008/09/17(水) 07:05:25
JSON の文法とかちゃんと読んだ?配列とかオブジェクトとかちゃんと書いてあるでしょ?
XML と同じでデータ構造しか表してないんだから、意味を定義するのはアプリ側だよ
274デフォルトの名無しさん:2008/09/17(水) 09:40:46
JSONでポインタとな
275デフォルトの名無しさん:2008/09/18(木) 15:00:58
----------Test1.js------------------
var Hash = new Object();
var Human = {
name : null,
age : null,
}

function Push(name, age)
{
var person = new Human(name, age);
Hash[name] = person;
}

function Test(name)
{
alert(Hash[name].age)
}

----------Test2.js------------------

function showAge(name)
{
Test(name);
}

--------------------------
Push(satou, 20);
showAge(satou);

として年齢をアラートさせたいのですが、Hash[satou]がundefinedになってうまくいきません。
オブジェクトが共有されてないみたいですが、この様な場合でもうまくいく方法はありますか?
276デフォルトの名無しさん:2008/09/18(木) 15:40:41
Hash[saout]がundedinedになる以前にあちこちでエラー出ないかそれ
277275:2008/09/18(木) 15:59:57
js間の問題だと思っていたのですが、どうやら原因はこれを書いていた拡張機能の中のウィンドウ間の
オブジェクトの共有の部分でした。申し訳ありませんでした。
278デフォルトの名無しさん:2008/09/21(日) 14:31:16
GoogleのAjax Libraries APIを利用してDojoのDatePickerを使っているのですが、
Firebugに「uncaught exception: Could not load cross-domain resources: dojo.widget.DatePicker」
と怒られてしまいます。
<script src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("dojo", "1.1.1");
google.setOnLoadCallback(initDojo);

function initDojo() {
dojo.addOnLoad(init);
}

function init() {
dojo.require("dojo.widget.DatePicker");
}
</script>

...

<div dojoType="datepicker"></div>

他の簡単なdojoサンプルは動作したのですが、
DatePickerサンプルが動作してくれません。
どなたかアドバイスお願いします。
279デフォルトの名無しさん:2008/09/21(日) 22:57:34
基本的な質問で申し訳ないんですが、
引数付きの関数があるjavascriptを含むHTMLに対して、
URLに引数を与えて、そのページを読み込む直後にURLの引数とともに関数を実行させる
みたいなことはどうやったら実現できるのでしょうか。
280279:2008/09/21(日) 23:11:05
すみません自己解決しました。
スレ汚して申し訳ないです
281デフォルトの名無しさん:2008/09/25(木) 22:11:28
var obj = new Hoge();
というコードで、Hogeクラスのインスタンス obj を作成した後に
obj から オブジェクト名 "Hoge" を取得する方法ってありますでしょうか?
instanceof も残念ながらインスタンスとの比較にしか使えないみたいですし
色々と試したのですが、[object Object] という文字列になってしまいます
よろしくお願い致します
282デフォルトの名無しさん:2008/09/25(木) 23:03:11
>>281
>var obj = new Hoge();
だれだけじゃわかんねーよといいたいとこだが、
へぇ〜それもいけるのか・・・
function Hoge(){
this.name="Hoge";
}
としてobj.nameで取得するとかじゃだめ?
>>281がやりたいことそのままってのはできないとオモウ
283デフォルトの名無しさん:2008/09/25(木) 23:21:00
>>282
.NET でいうと
typeof で Type型を取得して、FullNameプロパティでクラス名を取得する感じです
JavaScript では自分で作ったクラスを typeof にかけると
オブジェクト名が "object" になっちゃうんですよねぇ、残念っす
やっぱ無理っぽいですね・・・
無理だと、やっぱり >>282 の実装になっちゃいますよね
284デフォルトの名無しさん:2008/09/26(金) 06:05:28
( ^ω^)・・・?
285デフォルトの名無しさん:2008/09/26(金) 06:33:47
>>283
prototypeベースだからいろいろ都合があるのさ。
JScript.NETでもやってろタコ。
286デフォルトの名無しさん:2008/09/26(金) 09:37:26
>>283 コンストラクタ・・・
287デフォルトの名無しさん:2008/09/26(金) 10:15:08
JavaScript のクラスってのは動的なオブジェクトで、
オブジェクトそのものには名前は無い。

var Hoge = function () { this.hoge = "Hoge"; };
var obj1 = new Hoge;

var Foo = Hoge;
var obj2 = new Foo;

関数宣言された場合に取得できるようになっている、とかの勝手実装はあるかも知れないが
少なくとも ECMAScript 3.0 では定義されていないし、
直感的で無いのでお勧めしない。

やりたいことがイマイチ分からんのだが
obj1 instanceof Hoge で駄目な理由は?
288デフォルトの名無しさん:2008/09/26(金) 10:56:48
ちょっとつまずいてますので教えてください。
ウインドウのメニュバーを消したいのですが、親ウインドウ側で
指定がうまくできませんので、子側で(menubar=no,toolbar=no,scrollbars=no)
このようなスクリプトを書きたいのですが、
分かる方いらっしゃいますか?
289デフォルトの名無しさん:2008/09/26(金) 11:11:12
そういうのはセキュリティや利便性からもう動作しないようになってる
つーかそんなんやるな
290デフォルトの名無しさん:2008/09/26(金) 13:04:21
ウインドウをJavaScriptで擬似的に描画すればいい
291デフォルトの名無しさん:2008/09/26(金) 13:50:44
>>290擬似的にってものすごい怪しげな感じがします。
要は、flashのwebコンテンツを画面にできるだけ全体に表示したいんですが。
292デフォルトの名無しさん:2008/09/26(金) 14:00:32
WEB上のアプリがタイルバーもボーダーもなしで全画面表示できたら、
ログオン画面そっくりのフォームを作ってユーザーにIDとパスワードを入れさせるよ。
できなくしてあるのはつまりそういうわけだ。
293デフォルトの名無しさん:2008/09/26(金) 14:44:19
javascriptが高速化されたとして最近興味もちはじめたのですが
javascriptで数値計算するようなlibraryってないのですか?
GSL呼べばいいの?
294デフォルトの名無しさん:2008/09/26(金) 14:52:51
なるほどブラウザは使えないようですね。
ありがとうございます。
所詮はjavascriptであって、ブラウザに左右されそうですね。
295デフォルトの名無しさん:2008/09/27(土) 04:28:43
>>294
なんなんだろその上から目線。
296デフォルトの名無しさん:2008/09/27(土) 08:49:05
気にするな、単なる典型的なゆとりだ。
297デフォルトの名無しさん:2008/09/27(土) 09:55:44
>>293
なければ移植すればいいじゃない
298デフォルトの名無しさん:2008/09/27(土) 11:09:22
>>295
基本的にバイナリ配布してないし、ローカル・ファイルアクセスもできないからそういわれて当然のような気がするけど?
299デフォルトの名無しさん:2008/09/27(土) 11:12:15
>>298
論点ずれてる
300デフォルトの名無しさん:2008/09/27(土) 11:38:22
どこかにCのバイナリ・リリースないですか?
301デフォルトの名無しさん:2008/09/28(日) 18:45:20
Cの何のバイナリ・リリース?
302デフォルトの名無しさん:2008/09/28(日) 20:00:35
おちつけ
>>300は最近「バイナリ」という言葉を覚えてよろこんでる>>294だ。
303デフォルトの名無しさん:2008/09/29(月) 00:13:51
当然JSソースを処理できるインタプリタのバイナリ(Cでコンパイルしたもの)。ここまで説明しても分からないのは文系のカス野郎w
304デフォルトの名無しさん:2008/09/29(月) 02:22:18
>>303
jsを投げて結果を出力する=ブラウザ
jsを投げてexeを出力する=知らん

どちらもCである必要は無いし、リリース版である必要も無い
10年くらいROMった方がいいと思うよ
305デフォルトの名無しさん:2008/09/29(月) 02:26:51
>>304
人にそういう風に言う君のほうこそ、もう一度CGIから初めて、サーバー・クライアント・システムのことを勉強した方がいいよ。
306デフォルトの名無しさん:2008/09/29(月) 08:43:39
>>304が書いているのは「コンパイラ」で>>303が書いているのは
「インタプリタ」全然違うじゃん。

ちなみにJavaScriptインタプリタの実装として一番代表的なのが
SpiderMonkeyでこれはCで書かれている。その次にRihnoという
Javaで書かれたのがある。どちらもフリーだから検索すれば。
307デフォルトの名無しさん:2008/09/29(月) 08:50:09
それをコンパイルしてバイナリーで誰か配布してくれくれってことだと思うけど?どこかで読み間違えたか?
308デフォルトの名無しさん:2008/09/29(月) 08:56:24
コンパイルしたバイナリってなんだよ
バイナリを手前の環境でコンパイルするんだろ
309デフォルトの名無しさん:2008/09/29(月) 09:10:17
>>306
SpiderMonkeyはC++。

あと>>298みたいなお子様は放置で。
310デフォルトの名無しさん:2008/09/29(月) 09:27:49
ブラウザって、JSコンパイラだったのか。知らんかったwww
311デフォルトの名無しさん:2008/09/29(月) 11:53:19
これがム板か
312デフォルトの名無しさん:2008/09/29(月) 12:47:55
そもそも
>要は、flashのwebコンテンツを画面にできるだけ全体に表示したいんですが。
と、JavaScriptをネイティブにコンパイルして実行することに何の関連性もない。
馬鹿の考えることは微塵も理解出来ない。
313デフォルトの名無しさん:2008/09/29(月) 12:59:29
質問者は別人と考えてもいいんじゃないか?おまえがバカw
314デフォルトの名無しさん:2008/09/29(月) 13:10:10
315デフォルトの名無しさん:2008/09/29(月) 15:20:25
javascriptとロカールのプロセスと連携するには
http_request(localhost 何か)
がベストなやり方なのでしょうか?

hoge.so

に直接アクセスする方法はないのでしょうか?

316デフォルトの名無しさん:2008/09/29(月) 15:40:17
Javascript処理系の実装次第としか言えないんじゃね?
WindowsのJavascript処理系のJScript(WSH)はActiveXオブジェクトにアクセスできるわけだし。
317デフォルトの名無しさん:2008/09/29(月) 17:31:15
>>315
つ Web制作板
318デフォルトの名無しさん:2008/09/29(月) 17:35:56
Web制作でローカルと連携ですか
319デフォルトの名無しさん:2008/09/29(月) 19:10:53
>>316
IEでもActiveX許可すれば問題なくローカルアクセスできるぜ。
hoge.exeの実行も許可すれば問題なく実行できるぜ。
320デフォルトの名無しさん:2008/09/29(月) 19:27:16
ローカルプロセス側にWEBサーバ機能を持たせればいいだけ
321デフォルトの名無しさん:2008/09/30(火) 10:54:38
>>319
イントラとインターネットでセキュリティ切り替えできるからありと言っちゃあありだよね
322デフォルトの名無しさん:2008/10/02(木) 19:39:41
Javaスクリプトの開発環境の話がないけど、興味ないのかな。

サンプルはあってもスクリプト単独で動かすわけでもないから開発環境欲しいなと思ったんだけど
NetBeans程度の対応じゃそこら辺のエディタと変わらない気がするし

Eclipse+Aptanaとかそんな規模の作るわけでもないのにでかすぎ重すぎだし
ez-HTMLは画面レイアウトが簡単じゃないし
Firebugはデバッグにはいいかもしれないけどその前段階がだめだし
View formatted sourceは関係ないけど便利そうだけど


1ページのHTML+CSS+JavaScriptを統合的に簡単にコーディングできる環境ってどれ?
323デフォルトの名無しさん:2008/10/02(木) 19:48:06
Emacs
324デフォルトの名無しさん:2008/10/02(木) 22:44:17
>>323
Emacsも、色分けできただけで大喜びしてる変な文化だよね。
325デフォルトの名無しさん:2008/10/02(木) 23:31:33
>>321
世界標準のホームページ制作王なんかおすすめだな(今は商品名が変わっているらしいけど)
326デフォルトの名無しさん:2008/10/02(木) 23:32:39
安価ミス>>321 → >>322
327デフォルトの名無しさん:2008/10/02(木) 23:51:59
安価ミスを気にするほどのレスかw
328デフォルトの名無しさん:2008/10/04(土) 09:18:19
あるドキュメントのリンクをクリックして別のドキュメントを表示させて更にそこのリンクをクリックしてという一連の操作を書く場合は対象となるドキュメントをどう指定したら良いんでしょうか?ウィンドウは同じです
あるところまでは前のドキュメントあるところからは移動した先のドキュメントを対象にしたいです
329デフォルトの名無しさん:2008/10/04(土) 17:03:11
ウィンドウは同じ・・・
同ドメインならフレームにすればできるんじゃない。
330デフォルトの名無しさん:2008/10/04(土) 18:20:32
自分のページではなくて既存のページに追加する形で操作したいんです
331デフォルトの名無しさん:2008/10/04(土) 18:42:13
>>330
ドメインまたぐならサイト側のあれこれでは無理。
できてしまったら、悪用もできてしまうとは思わない?
リンクをクリックしたら2chに勝手に書き込み完了するとかさ。
332デフォルトの名無しさん:2008/10/04(土) 18:56:14
確かにそうですね
クライアントサイドのJavascriptでCSS追加などができるのでそういう「オートマ化」ができないかと思ったのでした
333デフォルトの名無しさん:2008/10/04(土) 19:32:28
繰り返し作業の簡略化をしたいだけなら、Bookmarkletで読み込ませればいい。
あれならそのページの一部として埋め込まれるから
htmlに直に書いたJavascriptでできることなら一通りできる。
334デフォルトの名無しさん:2008/10/04(土) 20:20:12
bookmarkletの場合に複数のドキュメントを操作するには複数のドキュメントでそれぞれ読み込ませてifかなにかで分岐することになるのでしょうか?
335322:2008/10/05(日) 12:09:14
Aptana単体でインストールできるらしかったので入れてみました。
やっぱ最新版がいいなとインスコして起動したらエラー。起動しません。
ユーザー名がぶっこわれててプロファイルが設定できないとか。

Eclipseはよく見ると既にあったし、なんとインストール不要らしいのでプラグイン使ってみようとダウンロード
・・・できません。
ひとつのメアドでは二つ以上ダウンロードできないのか。
でもほかのメアド使ってなんとかダウンロード。

このさいだしEclipseも最新にしてプラグインの設定・・・わかりません。
Aptanaダウンロードページにあったプラグインのアドレス追加手順で自動インスコしました。
Aptanaダウンロードした意味ねー

Eclipse英語版はちゃんと日本語名扱えるのにAptanaだとバグる意味がよくわからない。

んで作りかけのHTML読ませてFormatするとインデントの対応取れてねー。
タグの対応が取れてないのがたくさんありました。
<P>って改行の意味だと思ってた。

んで$('')の意味が検索しても分からなかったけどAptanaでマウスポイントしたら分かりました。
入れてよかったけど簡単なHTML1枚読むのに300MBくらいメモリ食うのってどうなのと。
インスコしたファイル丸ごとメモリに読み込んでそうな勢いです。
336デフォルトの名無しさん:2008/10/05(日) 16:44:27
結局デバッガはブラウザ使うことになるのに
エディタで無くて糞重い IDE 使う利点って見つからない
337デフォルトの名無しさん:2008/10/05(日) 18:50:59
彼が欲しかったのはタブエディタだったとおもう
338デフォルトの名無しさん:2008/10/07(火) 01:03:47
339デフォルトの名無しさん:2008/10/07(火) 01:09:16
やだ
340デフォルトの名無しさん:2008/10/07(火) 01:15:09
Cookieについて質問です。
あるサイトAに関して

他のページ −> Aのトップ   の時は処理Bを行う
サイトAのトップ以外のページ −> Aのトップ    の時は処理Cを行う
Aのトップのリロード −>    の時は処理Bを行う

と、つまりサイトA内のトップ以外のページからトップに飛んだ時だけ別の処理をしたいんですが
クッキーでやる場合どうするのがセオリーになるのでしょうか?
サイトA内のトップ以外のページ全てにフラグクッキーを作らせてトップに来たときそれ見て判断+削除
ってするしかないでしょうか?
341デフォルトの名無しさん:2008/10/07(火) 01:17:46
事故解決乙
342デフォルトの名無しさん:2008/10/07(火) 01:22:30
document.referrer
343デフォルトの名無しさん:2008/10/07(火) 01:44:35
344デフォルトの名無しさん:2008/10/07(火) 04:12:08
やだ
345デフォルトの名無しさん:2008/10/07(火) 11:30:00
うぜ
346デフォルトの名無しさん:2008/10/07(火) 11:45:04
>>343
すごいすごい。よかったね。
347デフォルトの名無しさん:2008/10/07(火) 11:52:28
>>343
よくできまちゅたね〜えらいでちゅね〜すごいでちゅね〜
348デフォルトの名無しさん:2008/10/07(火) 12:02:28
>>343
きたねぇソースだな
無駄な処理も多くて反吐が出るぜ
349デフォルトの名無しさん:2008/10/07(火) 12:53:33
>>343
何を評価してほしいわけ?
350デフォルトの名無しさん:2008/10/07(火) 13:59:22
よく見るHogeって何?
351デフォルトの名無しさん:2008/10/07(火) 14:02:14
352デフォルトの名無しさん:2008/10/08(水) 00:10:54
ジャバスクリプト初心者です


ttp://psycol5.sugoihp.com/pcpark/hiclass/hihp11.html
こちらのサイトを参考に、画像を動かすものを作ってるのですが
画像を複数にした場合、どう改造したら正しく動作しますか?

document.all.daruma.style.pixelLeft = x;
document.all.daruma.style.pixelTop = y;
このdaruma部分を、例えばdaruma1 daruma2としていくとして、4,5個画像があった場合、
どうすればその部分を変更できるでしょうか
自分なりに頑張っては見たのですが、どうも上手く行きません
どなたか助けてください
353デフォルトの名無しさん:2008/10/08(水) 00:26:40
352できました
しんぐるこーてーしょん付け忘れてた・・・
354デフォルトの名無しさん:2008/10/08(水) 01:02:02
>>341-342有難うございます。
リファラだけだとまずいようですね。自己解決はいいけどめんどくさいからやりたくなかったんだよな・・・。
355デフォルトの名無しさん:2008/10/08(水) 13:19:37
クラスメソッド定義するとき、
function class() {
this.m_funcA = function() {}
}

function class_funcA() {}
function class() {
this.m_funcA = class_funcA;
}
どっちが一般的でしょうか?
356デフォルトの名無しさん:2008/10/08(水) 13:58:19
function class(){
  class_funcA : function(){
    〜
  }
}
357デフォルトの名無しさん:2008/10/08(水) 14:36:20
>>355
後者って他と重複するんじゃない?

>>356
古いので動かんって書いてあった
358デフォルトの名無しさん:2008/10/08(水) 14:38:02
>>356
なにそれ?
359デフォルトの名無しさん:2008/10/08(水) 14:46:41
function class_funcA() {}
class_funcA.prototype.m_funcA = function () {}
360デフォルトの名無しさん:2008/10/09(木) 03:38:40
命名もうすこし何とかならなかったのか
361356:2008/10/10(金) 01:18:55
間違えた
class.prototype={
  class_funcA : function(){
    〜
  }
};
362デフォルトの名無しさん:2008/10/10(金) 01:50:35
class ってキーワードだから無理だろ
363デフォルトの名無しさん:2008/10/10(金) 11:40:15
準キーワードだよ
364デフォルトの名無しさん:2008/10/10(金) 15:37:45
355のネーミングに合わせただけで特に意味は無いだろうに・・・
365デフォルトの名無しさん:2008/10/12(日) 11:14:42
interHTMLにjavascriptは使えないんでしょうか

たとえば
xxx.interHTML = aaa.responseText;
でresponseTextの内容は↓なんですが
<script type="text/javascript">document.write("aaa");</script>
うまく表示されません。
366デフォルトの名無しさん:2008/10/12(日) 11:47:54
そもそもそういう変なことはするべきではない。
せざるを得ないのなら設計が悪い。
367デフォルトの名無しさん:2008/10/12(日) 11:50:14
document.writeではないのですが、
interHTMLで送った内容の中にちょっとした計算事やonclickイベント入れたら機能しなかったので
interHTMLでjavascriptはNGなのかなと思い質問させてもらいましたι
368デフォルトの名無しさん:2008/10/12(日) 12:02:39
>interHTMLで送った内容の中にちょっとした計算事やonclickイベント入れたら機能しなかったので

<input type='button' value='test' onclick='alert(123)' />
369デフォルトの名無しさん:2008/10/17(金) 13:21:19
emacs js2-mode いいよ
370デフォルトの名無しさん:2008/10/17(金) 20:06:43
interHTML に一致する日本語のページ 4 件中 1 - 4 件目 (0.12 秒)
371デフォルトの名無しさん:2008/10/17(金) 20:09:23
× interHTML

○ innerHTML



おまえら優しいんだな
372デフォルトの名無しさん:2008/10/21(火) 00:49:10
ディスク整理してたらMicrosoft Development Environmentとかいう
スクリプトエディタがあった。

Microsoft Visual Studio 6.0付属らしいけど、そんなもん入れた覚えない。
373デフォルトの名無しさん:2008/10/21(火) 01:04:21
それどんなソフト?
374デフォルトの名無しさん:2008/10/21(火) 02:01:08
ボタン一つでコントロールを配置できるHTMLエディタと
スクリプトデバッグ環境みたい。

OfficeProに、FrontPageと一緒に付属してたのかな?
こんなもんがあるとか知らなかったよ。

Helpから
>MicrosoftR Script Editor を使うことによって、
>HTML および ASP (Active Server Page) ファイルの HTML タグを表示し、編集することができます。
>Microsoft Visual BasicR, Scripting Edition (VBScript)、JscriptR などのスクリプトをファイルに追加して、
>そのスクリプトをデバッグすることもできます。

ASP、DynamicHTML、VBScript、JScriptのリファレンスまでついてる。
関数が意外と少ないのはバージョンが古いからなのか・・?
375デフォルトの名無しさん:2008/10/21(火) 02:02:57
そいつは便利そうだな
376デフォルトの名無しさん:2008/10/21(火) 23:22:04
プログラム中でcallオブジェクトを指定する方法は無いでしょうか?
thisみたいな感じで。
要はある関数から呼ばれた関数の中で、呼び出し元のローカル変数にアクセスするみたいな事をしたいのです。
377デフォルトの名無しさん:2008/10/21(火) 23:43:18
死ねばいいと思うよ
378デフォルトの名無しさん:2008/10/22(水) 00:05:07
>>376
呼び出し元の変数を操作するファンクションをもったインスタンスを渡す
379デフォルトの名無しさん:2008/10/22(水) 00:24:57
this渡せばいいんですね
380デフォルトの名無しさん:2008/10/22(水) 00:34:01
永久ループの完成ですね。おめでとうございます。
381デフォルトの名無しさん:2008/10/22(水) 10:34:29
>>376
普通に変数名を書くだけでアクセスできるはずだけど
382デフォルトの名無しさん:2008/10/22(水) 10:51:36
クラスとそのメソッドとして実装すればいいじゃない
383デフォルトの名無しさん:2008/10/23(木) 16:18:37
ボタンを押すと、普通にホームページに書いてある文字が変わるように出来ませんか?
384デフォルトの名無しさん:2008/10/23(木) 16:22:57
<script type="text/javascript">
<!--
function func() {
document.all.ABC.innerHTML = "<b>おやすみ</b>";
}
// -->
</script>
<div id="ABC">おはよう</div>
<button onclick="func()">OK</button>
385デフォルトの名無しさん:2008/10/23(木) 17:27:06
ブラウザ上のJavaScriptに関する話題はWeb制作板へ。
386デフォルトの名無しさん:2008/10/23(木) 17:32:15
[JavaScript]プログラム作成します
http://pc11.2ch.net/test/read.cgi/hp/1212582365/
387デフォルトの名無しさん:2008/10/26(日) 03:01:47
こんにちわ
if(!document.getElementById)
{
return;
}
っていう記述を見たんですが、これってどういう処理ですか?
getElementByIdは関数だから、関数がNULLならリターンするってこと?
そもそもgetElementByIdは組み込み関数かと思っていたのですが、これがない場合ってどんなの?
他のJSでこの関数をNULLにしちゃったとか、そういうことをチェックしているのかな?
それともブラウザが対応していない事を検出しようということなのかな?
388デフォルトの名無しさん:2008/10/26(日) 03:07:35
>>387
使える機能はブラウザによって違う。
ブラウザを判定するため、もしくは、その機能が使えるかどうかを確認するために関数を見る。
389デフォルトの名無しさん:2008/10/26(日) 03:30:35
>>385
それじゃここは何の話をするスレなの?
390デフォルトの名無しさん:2008/10/26(日) 03:33:03
JavaScriptはブラウザ以外でも使われている
391デフォルトの名無しさん:2008/10/26(日) 03:46:02
それは知らんかったわ。
392デフォルトの名無しさん:2008/10/26(日) 09:02:04
>>383
こういう質問を気軽にできるようにphp板が出来たわけだから。

>>387みたいに言語そのものの話と考えられるものはセーフだけど。
393デフォルトの名無しさん:2008/10/26(日) 09:22:28
正直このスレは
ECMAScript デス 3
http://pc11.2ch.net/test/read.cgi/tech/1190160481/
の重複スレだと思うのね
394デフォルトの名無しさん:2008/10/26(日) 10:06:33
>>393
だよね。
395デフォルトの名無しさん:2008/10/26(日) 10:57:54
もともとなかったんだけど、
ブラウザ系の質問がウザイから、
防波堤的に作られた。
396デフォルトの名無しさん:2008/10/26(日) 11:23:33
>>388
教えてくれてありがとうございます。
397デフォルトの名無しさん:2008/10/27(月) 18:07:04
>>387
Cの関数ポインタみたいなもん
398デフォルトの名無しさん:2008/10/27(月) 18:17:42
>>397
それは違う。
399デフォルトの名無しさん:2008/10/29(水) 14:50:59
メールアドレスとメールアドレス(確認用)が一致していなければアラートが出るようにしたいのですが

そのまま使えるような、何かいい実用例とかありませんでしょうか?
よろしくお願いいたいします。
400デフォルトの名無しさん:2008/10/29(水) 17:27:08
401デフォルトの名無しさん:2008/10/31(金) 02:30:08

http://qb5.2ch.net/test/read.cgi/operate/1206636885/657
駄目元で書き込んだ。
賛同してくれる人はこのレスに同意のアンカーをつけてくれ。
402デフォルトの名無しさん:2008/10/31(金) 16:27:13 BE:2242867788-2BP(1000)
JavaScriptでif文に”―”を検索対象にすると、何故かエラーがでてしまうん
ですけど、その回避対策みたいなものを知っている方はいませんか?

if(str == "―") {・・・}

みたいに”―”を入れると何故かエラーがでてしまいます。

文字列の縦書き表示をつくっている途中で、エラーがでてしまい、悩んでいます。
未完成の縦書き表示↓
http://www8.atpages.jp/~kirinoana/KiriNoAnaVar5/text.cgi?num=0&novel=17&mode=tategaki
403デフォルトの名無しさん:2008/10/31(金) 17:31:39
>>402
エラーは見てないが、
コードのエンコードがShift_JISだからに違いない。
404デフォルトの名無しさん:2008/10/31(金) 19:19:01 BE:2523226098-2BP(1000)
>>403
エンコードの種類をShift_JIS以外の、UTF-8、EUC-JP、ISO-2022-JPなどを
試しましたけど、以前の症状は改善することができませんでした。
私のやり方が間違っているのでしょうか?
405デフォルトの名無しさん:2008/10/31(金) 20:32:47
JavaScriptの実行環境を書かないのは、

その程度テメエであらゆる環境を試せよクズ、
こっちはキーボードを一つ叩くだけでも価値が違うんだボケ

ということ?
406デフォルトの名無しさん:2008/10/31(金) 20:36:55 BE:1121433784-2BP(1000)
>>405
申し訳ありません。こういうところで相談することに慣れていないもので。
Windows XPにFMV-BIBLO MG50Jというノートパソコンを使っています。
407デフォルトの名無しさん:2008/10/31(金) 20:41:09
その的外れな内容で、スレの住人をからかいたいということがよく分かった。
408デフォルトの名無しさん:2008/10/31(金) 20:54:12
>>402
今ページ見たけどもう中身消しちゃった?
とりあえず、エラーが出たときに使ってたブラウザは何?
409デフォルトの名無しさん:2008/10/31(金) 21:10:12 BE:560716782-2BP(1000)
>>407
いや本当に、そもそもこの板に慣れてなければ、ここの住人が
どんな性質なのかもさっぱりわからないので、失礼することが
度々あるかもしれないです。すいません。

>>408
すいません。間違えてログインしないと見れないページを貼ってしまいました。
こっちです。
http://www8.atpages.jp/~kirinoana/KiriNoAnaVar5/text.cgi?num=nanasi_login&novel=17&mode=tategaki
410デフォルトの名無しさん:2008/10/31(金) 21:15:03 BE:420538234-2BP(1000)
>>408
>とりあえず、エラーが出たときに使ってたブラウザは何?

ファイアーフォックス3.0.3です。
411デフォルトの名無しさん:2008/10/31(金) 21:26:31
UTF-8で全部手打ちしてからもう一回こい。
412デフォルトの名無しさん:2008/10/31(金) 21:34:51 BE:1051344656-2BP(1000)
>>411
今試しましたが、すると文字一帯が全部非表示になってしまいました。

perlベースで、全部手打ちでつくっています。
>>409のソースコードはCGIが吐き出したものです。
413デフォルトの名無しさん:2008/10/31(金) 22:04:06
>>412
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
をヘッダタグに追加してもう一回試せ。
perlは知らん。
414デフォルトの名無しさん:2008/10/31(金) 22:24:29 BE:315403733-2BP(1000)
>>413
言われた通りにやりましたら、こんな風になってしまいましたが。。
http://www8.atpages.jp/~kirinoana/KiriNoAnaVar5/text.cgi?num=nanasi_login&novel=17&mode=tategaki
415デフォルトの名無しさん:2008/10/31(金) 22:28:56
>>414
perl側でuse utf8かuse Encodeして吐く文字自体をutf8にしないとだめだよ

とりあえずshift-jisで試すために、
else if (str == '―') { alert(str) }
を追加して、文の初めに―を追加したけど、alert出てきたよ@Firefox3.0.3

エラーが出る状態にしてみて。
文に―を追加してscriptにif文追加した状態に。
416デフォルトの名無しさん:2008/10/31(金) 22:38:43 BE:2207822797-2BP(1000)
>>415
やりました。
http://www8.atpages.jp/~kirinoana/KiriNoAnaVar5/text.cgi?num=nanasi_login&novel=17&mode=tategaki
ソースコード確認したのですが、
} else if(str == '・) {
alert(str);
}
ってなっています。
このように変換してしまうのは、一体何が問題なんでしょうか?

}
417デフォルトの名無しさん:2008/10/31(金) 22:44:40
Perlのプログラム自体をUTF-8に変更しろ
418デフォルトの名無しさん:2008/10/31(金) 22:47:17
>>416
なるほど。スレ違いだな。こっちでperlのエンコードの仕組みを聞いた方が良いかも。
Perlについての質問箱 38箱目
http://pc11.2ch.net/test/read.cgi/tech/1221967332/

>>417が言ってる通り、utf8で保存できるエディタでperlのファイルをutf8にして、
use utf8;書けばうまくいくかもしれないけどじJavaScriptと関係なくなるのでperlスレの方へ
419デフォルトの名無しさん:2008/10/31(金) 23:00:45 BE:735941737-2BP(1000)
>>418
なるほど、utf8で保存できるエディタを探してみたいと思います。

このスレで親切にレスをくれた方々、ありがとうございました。
420デフォルトの名無しさん:2008/11/03(月) 13:12:24

<META http-equiv=Content-Type content="text/html; charset=shift_jis">
<script language="JavaScript" src="outScript.js">
function valueFigure() {
int value1Int,value2Int;
value1Int = eval(document.value1);
value2Int = eval(document.value2);
document.form.ansInt.value = value1Int + value2Int;
}
//-->
<body bgcolor=gray text=text>
<form name="form">
二つの数字を入力して下さいね〜。<br>
<!-- 入力テキストフィールド:左 -->
<input type="text" name="value1" style="width=30">+
<!-- 入力テキストフィールド:右 -->
<input type="text" name="value2" style="width=30">=
<!-- 結果出力テキストフィールド -->
<input type="text" name="ansInt" style="width=30">
<!-- アクションボタン:足算 -->
<input type="button" value="足算" style="width=50" onMouseClick="valueFigure()">
<!-- テキストフィールドリセット -->
<input type=reset value="reset">
以下略...
script初心者です。書き込めるように余計な箇所は削除してます。
なぜ動かないのでしょうか・・・?
421デフォルトの名無しさん:2008/11/03(月) 14:04:12
できたーー! intなんて宣言はできないんですね・・・
422デフォルトの名無しさん:2008/11/03(月) 14:07:14
>>420
eval(document.value1.value)
423デフォルトの名無しさん:2008/11/05(水) 10:35:21
var a = "10";を数値型に変換する時って
Number()とeval()どっちがいいんだろ。
424デフォルトの名無しさん:2008/11/05(水) 11:18:11
整数確定ならparseIntという手もある。
425デフォルトの名無しさん:2008/11/05(水) 11:58:01
evalはやめとけ。
426デフォルトの名無しさん:2008/11/14(金) 00:36:55
aaaa
<!-- A -->
bbbb
...(要素の種類、数不定)
cccc
<!-- B -->
dddd

コメントAとBの間を取得するXPathの書き方がわかりません。
//comment[string(.)="A"]/following-sibling::node() と
//comment[string(.)="B"]/preceding-sibling::node()
との積集合ができれば楽かなと思ったのですが、
和集合しか演算子がなくて(union|)うまい方法が、
思いつきません。
XPath式で表現できませんか?
427デフォルトの名無しさん:2008/11/15(土) 23:48:22
Narcissus使ったことある人って結構いるもん?
428デフォルトの名無しさん:2008/11/16(日) 10:50:10
教えてください

<script type="text/javascript">
window.onclick = function() { alert("clicked");}
</script>

と入力してクリックすると常にメッセージを出すようにしようとしているのですが、
firefoxでは動くのですがIEでは動きません。
環境OS:vista IE7
どうしてでしょうか?
429428:2008/11/16(日) 11:41:09
すみません、板間違えました。
web製作にて質問します。
430デフォルトの名無しさん:2008/11/16(日) 12:01:49
ほんと MS は悪の巣窟だな
431デフォルトの名無しさん:2008/11/19(水) 06:13:43
json-rpcってもうそろそろ仕様は固定?
もう変わったりしない?
432デフォルトの名無しさん:2008/11/30(日) 20:01:32
プログラムを書いたファイルから
Test
っていう文字列が含まれる関数名をすべて取得して
DoTest
という関数内に書き出すってのをつくりたいんですが
さっぱりわかりません。誰か教えてください。
433デフォルトの名無しさん:2008/11/30(日) 20:57:46
>>432
悪いこと言わないから他の言語使っておけ。
Javascriptのソースコード(が書かれたテキストファイル)を処理するのに
JS使わなきゃいけない理由はない。
434デフォルトの名無しさん:2008/11/30(日) 21:12:52
JSで入出力を扱う標準って今もないんだっけか
435デフォルトの名無しさん:2008/11/30(日) 22:57:47
標準もデファクトも無い
436デフォルトの名無しさん:2008/12/01(月) 20:19:43
最初のオレンジでパカーッと割れるやつは、どうやって消すの?
437デフォルトの名無しさん:2008/12/01(月) 20:22:03
first.orange.one.pakaaa.open.clear = true;
438デフォルトの名無しさん:2008/12/02(火) 06:31:47
正規表現でのEUC文字の扱いについておしえてください。
具体的に示しますと、
r = this.remainder.match(/^([a-zA-Z0-9][a-zA-Z0-9_]*)(.*)$/);
(これは http://ioctl.org/logic/prolog2 のなかに現れるコードです)
0-9の後に全てのEUC文字を指定する表現を挿入したいのですが、
うまくいきません。
OSはKbuntu7.04(EUCで使用)
ブラウザはFirefox2.0.0.16 htmlファイルのHEADでeucエンコードを指定を追加しました。
439デフォルトの名無しさん:2008/12/02(火) 12:30:02
+ JavaScript の質問用スレッド vol.67 +
http://pc11.2ch.net/test/read.cgi/hp/1223618153/
440デフォルトの名無しさん:2008/12/02(火) 21:36:53
メールに添付されているファイルをデコードしたいんですが,何か手段はありますでしょうか?
ぐぐってもjavascriptのものはなくて,困っています。
どうしてもjavascriptじゃないとダメな感じなので,よろしくご教授ください。
よろしくお願いします。
441デフォルトの名無しさん:2008/12/02(火) 22:01:28
>>440
>javascriptじゃないとダメな感じ
その結論に至った理由を他の人でもわかるようにちゃんと書いてごらん。
442デフォルトの名無しさん:2008/12/02(火) 22:46:31
mash-upのひとつとして利用する必要があるからです。
javascriptで組み込むしかないんです。。。
443デフォルトの名無しさん:2008/12/03(水) 00:38:14
じゃあそのmash-upとやらでJavascriptを強要するツールの
スレかコミュニティで聞いてみるといい。
444デフォルトの名無しさん:2008/12/03(水) 06:43:14
JavaScript でメールを取ってくるわけでも無いだろうに
445デフォルトの名無しさん:2008/12/03(水) 10:28:25
base64のエンコーダ/デコーダなんてぐぐればすぐ出てくるじゃない
446デフォルトの名無しさん:2008/12/13(土) 12:53:29
"ttp://"を"http://"に変えるために
str.replace("ttp://","http://");
としたけど動きませんでした。
何故ですか。
447デフォルトの名無しさん:2008/12/13(土) 13:21:51
>>446
分かりません。
448デフォルトの名無しさん:2008/12/13(土) 22:23:26
ここは無能ぞろいのインターネッツですね
449デフォルトの名無しさん:2008/12/14(日) 02:41:27
無能エスパーでごめんね
450デフォルトの名無しさん:2008/12/14(日) 06:15:27
str に文字列が入っていなかったか
ブラウザで開くファイルを間違ってたか
ちゃんと動いてるのにその部分の記憶だけが飛んでいるか

の3通りが考えられる
451デフォルトの名無しさん:2008/12/14(日) 08:13:08
>>446
String.replaceは元のStringオブジェクト自体は変化させない。
置換結果はreplaceの戻り値として返される。
str = str.replace("ttp://", "http://");

リファレンスでも読んどけ。
ttps://developer.mozilla.org/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/replace
452デフォルトの名無しさん:2008/12/14(日) 08:27:05
htttp://
453デフォルトの名無しさん:2008/12/14(日) 18:10:32
そもそもJavaScriptの文字列はimmutableじゃなかったっけ?
454デフォルトの名無しさん:2008/12/21(日) 00:30:46
JavaScriptでテキストにカーソルを合わせ
その合わされたテキストのカラーを変化させることって可能でしたっけ?
455デフォルトの名無しさん:2008/12/21(日) 01:01:34
CSS で十分
456デフォルトの名無しさん:2008/12/21(日) 01:29:32
>>455
CSSでできませんけど・・・
457454:2008/12/21(日) 02:07:29
>>454ならびに>>456の訂正

カーソルを合わせたときにテキストとその背景を変更する方法です。
例えばテーブル内の
<TR><TD>1</TD></TR>
<TR><TD>2</TD></TR>
<TR><TD>3</TD></TR>
があったとして1にカーソルを合わせると1の背景と1のテキストカラーを
画像を使わず変更できるか?ということです
よろしくお願いします
458デフォルトの名無しさん:2008/12/21(日) 02:28:51
function chgColor(ctrl, c, bg)
{
ctrl.style.color = c;
ctrl.style.backgroundColor = bg;
}
<TR><TD onmouseover="chgColor(this, 'red', 'gray')" onmouseout="chgColor(this, 'black', '')">1</TD></TR>
459デフォルトの名無しさん:2008/12/21(日) 02:44:27
CSSの方がよっぽど簡単だが
td:hover { color:#fff; background:#000; }
460454:2008/12/21(日) 03:57:04
>>458>>459
ありがとうございます。
CSSでもあったのですね。

>>458>>459さんのようにすればカーソルを合わせて背景色と文字色を変更を
確かに変更できました。
ただ、CSSでは背景は変わるのですが、
文字はカーソルの位置次第で変化に差が出る。
JavaScriptでは同時に変わりますが文字にリンクがあった場合、
文字までカーソルを移動させないとダメなところ。

自分がやりたいのはdocument.imagesのような画像を使わず
テキストと背景をボタンのようにし、
リンクが可能かどうかなのです。
アドバイスよろしくお願いします。
461454:2008/12/21(日) 04:21:53
>>460
あ、すいません。自力でなんとか出来ました。
DIVにCSSでおkでした。
462デフォルトの名無しさん:2008/12/21(日) 08:52:42
web制作板へ行ってくれ
463デフォルトの名無しさん:2008/12/21(日) 09:49:14
>455 >459
ie6ではhoverはaタグにしか効かなかったと思うが。
何にせよ、スレ違いだな。
464デフォルトの名無しさん:2008/12/21(日) 11:22:07
どのツラ下げて「CSS ではできません」とか言ったんだろうな
465デフォルトの名無しさん:2008/12/21(日) 12:09:04
ただの無知だろ
466デフォルトの名無しさん:2008/12/21(日) 22:44:32
>464-465
お前ら直前のレス位読めよ
467デフォルトの名無しさん:2008/12/22(月) 08:49:24
お前は直前のレス以外も読んだら?
468デフォルトの名無しさん:2008/12/22(月) 12:12:17
ん?だから、結論としてはCSSじゃ出来ないんだろ?
divにhoverは環境依存だから、試した環境でたまたま動いたに過ぎん。
aタグじゃ要件は満たせないんだし、CSSだけじゃお手上げだろ。
469デフォルトの名無しさん:2008/12/22(月) 14:31:36
仕様書に:hoverがa要素だけって書かれているのか?
a要素でしか:hoverが働かないブラウザを使っているのか?
470デフォルトの名無しさん:2008/12/22(月) 15:04:01
板違いの醜い争いは止めて下さい。

IEの6以下で(略)したい人はcsshover.htcでググったらweb製作板へGO!
471デフォルトの名無しさん:2008/12/22(月) 19:58:57
www
472デフォルトの名無しさん:2008/12/24(水) 03:18:21
case "s\.s2ch\.net"://alert("s/"+key)
if(LPn.match("^\/test\/")!=null){
window.onload=function(){
for(i=0,c2ch_info="";document.links.length>i;i++){
dli=document.links[i];
dliCheck=dli.hostname;
if(dliCheck.match("^ime\.s2ch\.net$")!=null){
document.links[i].href="http://c.2ch.net/imenu/"+(document.links[i].href.replace(/ime\.s2ch\.net\//,""));
document.links[i].target="_brank";
document.links[i].text="@;"+document.links[i].text;
c2ch_info+="Next"+i+dli.target+"\n";
}
}//if(c2ch_info!=""){alert(c2ch_info);}
}
}document.close();
break
473デフォルトの名無しさん:2008/12/24(水) 03:41:11
>>472
s.s2の外部リンクを別タブで
画像広告のないc.2のimenuで開けるようにuserScriptをつくりました
修正されたリンクが一目でわかるようにリンクテキスト頭に@;をつけてます

これを頭に@;をつけるのではなく
(個別リンクの)リンクテキスト文字色を変える事で識別したいのですが

ヘッダの追加
document.body.outerHTML="何々"+document.body.outerHTML;
以外で可能でしょうか?

よろしくおねがいします
474デフォルトの名無しさん:2008/12/24(水) 12:08:46
よく分からんけど
document.links[i].innerHTML="<font color=red>"+document.links[i].innerHTML+"</font>";
とかじゃダメですか?
475デフォルトの名無しさん:2008/12/24(水) 13:06:08
自分で書いたソースっぽい言い方が、他人が書いたものなんだろな
476デフォルトの名無しさん:2008/12/24(水) 14:25:56
ありがとうございます
>>474を参考に
for(i=0,c2ch_info="";document.links.length>i;i++){
dli=document.links[i];
dliCheck=dli.hostname;
if(dliCheck.match("^ime\.s2ch\.net$")!=null){
document.links[i].href="http://c.2ch.net/imenu/"+(document.links[i].href.replace(/ime\.s2ch\.net\//,""));
document.links[i].target="_brank";
document.links[i].style.fontSize="xx-small";
document.links[i].style.color="lime";
c2ch_info+="Next"+i+dli.target+"\n";
}if(((i+1)%12)==0){document.close();}
}//if(c2ch_info!=""){alert(c2ch_info);}
window.onload=document.close();
としてみました

ttp://s.s2ch.net/test/-4-12.O4!mail=sage/pc11.2ch.net/streaming/1228379925/?keyword=ttp
のような外部リンクが多数あるとモッサリ感がすごいので
やはりまともにやるなら一つ一つ書き換えるより
outerから一斉にアウトプットした方がいいみたいですorz
477デフォルトの名無しさん:2008/12/24(水) 14:45:24
closeが多いのは
外部リンクが多い時、処理をまったく受け付けなくなったので
それを回避しようと試行錯誤したてstですorz
478デフォルトの名無しさん:2009/01/11(日) 13:11:39
質問はここでいいんでしょうか?
call関数についてよく分かりません。

f=function(x,y){return x*y};
について

f.call(this,2,3);

f(2,3);
と一体何が違うのでしょうか?
479デフォルトの名無しさん:2009/01/11(日) 13:56:36
>>478
f.call()はthisに何を渡してもいい。

480デフォルトの名無しさん:2009/01/11(日) 14:00:02
>>419
レスありがとうございます。

例えばどういったものを渡すのでしょうか。
そもそも引数に渡すthisにどういう意味があるのか分からんのですよ
481デフォルトの名無しさん:2009/01/11(日) 14:00:34
間違えた
×419 ○479
482デフォルトの名無しさん:2009/01/11(日) 14:14:04
A = { c : function(x){ return x - 1 } }
B = { c : function(x){ return x + 1 } }

c = function(x){ return x * 0 }

f = function(x, y){ return this.c(x) + this.c(y) }

//

f.call(this, 2, 3) // => 0
f.call(A, 2, 3) // => 3
f.call(B, 2, 3) // => 7
483デフォルトの名無しさん:2009/01/11(日) 14:28:27
ありがとうございます。よく分かりました
484デフォルトの名無しさん:2009/01/12(月) 18:02:03
JSONの処理方法わかる香具師いる?

var msec = (new Date()).getTime();
new Ajax.Request('http://www.cme.com/CmeWS/md/MDServer/V1/Venue/G//Exchange/XALL/FOI/FO/Product/NA?currentTime='+msec+'&contractCDs=ESH9,NQH9,YMH9,EMDH9,NIYH9,NKDH9', {

でデータ取得できたのは確認したんだけど、message内の各項目の取得方法がわからん。
JSON.parseかJSON.stringifyのどっちを使えばおk?
485デフォルトの名無しさん:2009/01/12(月) 19:05:57
>>484
prototype.js?
onCompleteハンドラの引数に渡されるけど。
本質的にはeval("json="+request.responseText)こういう処理。
486デフォルトの名無しさん:2009/01/12(月) 19:17:48
>>485
そう。prototype.js
ありがとう。ちょっと試してくる
487デフォルトの名無しさん:2009/01/12(月) 20:29:10
Ajaxなら↓辺りの方が議論が盛ん。

Ajaxでも語りませんか Rigel4
http://pc11.2ch.net/test/read.cgi/php/1166751613/
くだすれAjax(超初心者用)
http://pc11.2ch.net/test/read.cgi/tech/1132897521/
488デフォルトの名無しさん:2009/01/13(火) 00:04:33
知りたいのはprototype.jsでデータ取得した後のJSONの処理です。
それもAjaxに含まれるなら向こうに移動しますけど、どうなんでしょう。

日曜プログラマにはよくわかりません。。。
489デフォルトの名無しさん:2009/01/13(火) 00:18:38
じゃあ土曜プログラマには分かるとでもいうのか
490デフォルトの名無しさん:2009/01/13(火) 01:32:50
Saturday Night Programmer
491485=487:2009/01/13(火) 01:54:19
>>488
なんつうか、prototype.jsにJSON処理用の関数あるんだわ。
485ではあえてJavascriptのみのやり方書いたけど。

prototype.jsでのやり方知りたいならAjaxスレの方が適当だよ。
prototype.js JSONでググったら当たり前に出てくるし、
prototypejs.orgのチュートリアルにも書いてあることだけど。
492デフォルトの名無しさん:2009/01/22(木) 21:19:21
javascriptで関数プログラミング的なことをする
テクニック集みたいなのは
どこかにないのでしょうか
493デフォルトの名無しさん:2009/01/22(木) 23:02:14
まずはprototype.js読めば?
Arrayに対する関数がたくさん定義してあるよ。
LivelyKernelの中に短くしたのが入ってるよ。
494デフォルトの名無しさん:2009/01/24(土) 00:15:22
今jQueryとYUIどっちを勉強するかの岐路に立たされているんですが、どっちがいいでしょうか??
やはりjQuery??
495デフォルトの名無しさん:2009/01/24(土) 00:18:03
小さい(笑)から両方やってなんの問題もなし。
jQueryから始めることを勧める。
496デフォルトの名無しさん:2009/01/24(土) 00:37:05
変数のなかにJavaScriptをいれるのってどうやればいんでしょか。

今作ってるやつで例をあげると、
creation_at = '<div id="at">Flash Player. <a href="http://www.macromedia.com/go/getflashplayer/">Get Flash.</a></div>'+
'<script type="text/javascript">'+
'var fo = new SWFObject("../swf/viewer.swf", "viewer", "100%", "100%", "8", "#000000");'+
'fo.addVariable("xmlDataPath", "swf/xml/gallery_at.xml");'+
'fo.addVariable("langOpenImage", "Open Image in New Window");'+
'fo.write("at");'+
'</script>';
これをJavaScriptでhtmlの一部分を置き換えて表示させたいんだけど、どうも動作しないんですよ。
htmlの中では <div id="Change">なんらかの文字</div> が用意されててそこを置き換えるかんじです。
もしかして、変数のなかにタグは入れられてもJavaScriptはいれられないとか?
へるぷ!
497494:2009/01/24(土) 18:07:53
>>495
ありです!
498デフォルトの名無しさん:2009/01/24(土) 22:09:24
>>496
コード間違ってなきゃ動くと思う
アラートは開くし

置換したページでonChangeからfor,switch
<SCRIPT>内からとか呼び出せたし

記号類の\抜けとか一部escape
※%等
499デフォルトの名無しさん:2009/01/24(土) 22:16:09
TEXTAREAで囲んで望んだようにコードが(文字列として)出力されてるか
確認してみたら?
500496:2009/01/25(日) 13:41:19
ありがとうございます。
いろいろためしつつ勉強してみます。
501デフォルトの名無しさん:2009/01/28(水) 03:09:58
初心者質問すいません。
document.form.name.value って、必ず文字列になってしまうのでしょうか??
例えば、二つのテキストエリアの値を計算したいときは
alert(Number(document.form.text1.value) + Number(document.form.text2.value));
としなければいけないんでしょうか?
ご教示をばいただきたくm(_ _)m
502デフォルトの名無しさん:2009/01/28(水) 03:22:35
>>501
そう。
面倒に感じるかもしれないけど、たとえば二つのテキストエリアの文字を
連結する場合なんかに、数字しかなかったからと勝手にNumberにされて
合計されたら困るでしょ?
503デフォルトの名無しさん:2009/01/28(水) 08:37:04
数字と文字列表現は一対一対応じゃないから、
勝手に数字に変換されたら元に戻せない。
504501:2009/01/28(水) 14:22:56
なるほど。ありがとうございました!
505デフォルトの名無しさん:2009/01/28(水) 17:06:00
型を指定しておいて、自動的に型変換して欲しい時は、
サーバサイドでもクライアントサイドでもいいから、
フレームワークを使えばいい。基本は文字列のみ。
その辺はWeb製作板で。
506デフォルトの名無しさん:2009/01/30(金) 21:43:41
>>501
俺もこういうので一週間くらい一人悩んだな。

文字列でも数値を掛けたら数値扱いになるもんだから
エラーが出たりエラーが出なかったりで訳わかんなくなったもんだ
507501:2009/02/02(月) 13:11:06
ありがとうございます。
すいませんまた別の疑問ができたので質問させてください。

$("#sample").empty();

という文があったのですが、 これの $("#..") はいったいどういう意味の構文なのでしょうか?? empty()がメソッドを実行しているんだろうなというのはなんとなく分かるのですが・・
特殊文字は検索がしにくい。。アドバイス頂けると幸いです。
508デフォルトの名無しさん:2009/02/02(月) 13:26:15
>>507
function $()
が定義されてる。prototype.jsあたり。

JS的には、変数$に入ってる関数に"#sample"を引数にして呼び出して
その返値のオブジェクトのemptyを呼び出す、ということ。

JavaScriptに限った話ではないけど、特殊構文についてはまず
リファレンスを読む。予約語や制御構文の説明を中心に。
それで見つからないときは呼び出してるライブラリを疑え。
https://developer.mozilla.org/ja/Core_JavaScript_1.5_Reference
509デフォルトの名無しさん:2009/02/02(月) 13:28:56
それはJavaScriptというよりJavaScriptライブラリの一つの
jqueryによって実装された記法の一つ。
HTML中からid="sample"なノードを選択して、そのinnerHTMLを
空(empty)にする、という意味。

なので詳細はjqueryに関するページで調べると良いよ。
510501:2009/02/02(月) 13:45:55
>>508
>>509
なるほど!ありがとうございます。jQueryだったんですね。
しかし、読み込んでたjquery.js で$()の定義部を探してみたのですが、どこで定義しているのか分かりませんでした。
どこで定義しているのか教えていただけると幸いです。何度もすいません。
511デフォルトの名無しさん:2009/02/02(月) 13:52:22
>>509 すみません、要素が、
<html>
...
<div id="#sample"></div>
...
</html>
のように定義されているのですか?
512デフォルトの名無しさん:2009/02/02(月) 13:54:29
>>510
jquery-1.2.6.jsのline18

var jQuery = window.jQuery = window.$ = function( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init( selector, context );
};

>>508でちょっと書いたけど、JSの関数は全て
「変数に関数オブジェクトを代入」というもの。
function func() {}
var func = function() {};
この二つはほぼ同じ。alert(func);の結果に違いが出るぐらい。
513デフォルトの名無しさん:2009/02/02(月) 13:57:45
念のため。
ブラウザでのJSではwindowオブジェクトがグローバルオブジェクトになっているから
たとえばdocumentとwindow.documentは同一。
514デフォルトの名無しさん:2009/02/02(月) 14:51:24
>>511
#はidで.(ドット)はclassを表してる
CSSで書く書き方と同じ
515デフォルトの名無しさん:2009/02/02(月) 15:43:27
>>514
一応cssは関係ないだろ。一応。
516デフォルトの名無しさん:2009/02/02(月) 16:30:37
>>515
多分、jQueryのセレクタの話かなと思ったので
CSSやったことあるならそれと同じようにやればいいよという意味だった
逆に混乱するか。
517デフォルトの名無しさん:2009/02/02(月) 16:32:00
関係ないといえば関係ないけど、jqueryのSelectorのデザイン自体は
結構CSSのそれを意識していると思う。
518デフォルトの名無しさん:2009/02/02(月) 17:39:52
>>509
> それはJavaScriptというよりJavaScriptライブラリの一つの
> jqueryによって実装された記法の一つ。

もっと前からあった関数だよ。
初期のjQueryでは、最初に、

function jQuery(a,c) { //以下略
if ( $ )
jQuery._$ = $;
var $ = jQuery;

としている。

P.S.
Javascriptのライブラリは、互いに依存して役割を分担するのでなく、
どんどんコードを中に取り込んじゃう流儀だから、
同じ名前で似ているんだけど動作が微妙に違うことがあって、
しっかりAPIドキュメント読みする必要があると思う。
519デフォルトの名無しさん:2009/02/02(月) 17:52:32
>>518
たぶん>>509が言いたかったのは>>507の書き方に対してだろ
prototype.jsならid="#sample" なんておかしな書き方してることになるし、
empty()があることからもjQueryって予測しての発言したんだと思うよ
520デフォルトの名無しさん:2009/02/02(月) 18:18:50
>>519
そうです。jqueryだとあまりに頻出なイディオムだったので
脊髄反射的に答えてしまいました。
「おそらくはjqueryの・・・」と書いた方が適切でしたね。
521デフォルトの名無しさん:2009/02/02(月) 21:26:13
複数項目のあるselectフォームから、一つを選択したと同時に
submitしたいけど、javaScriptがないと無理だよなぁ・・
あのgoogleでさえjsつかてやってるもんなあ
522デフォルトの名無しさん:2009/02/03(火) 04:36:33
なんか、もう意味わかってないようなやつがいるな。
あのgoogleでさえjs、とか。
523デフォルトの名無しさん:2009/02/03(火) 08:36:11
まぁまぁムキになりなさんな
524デフォルトの名無しさん:2009/02/03(火) 09:47:34
というかlowerCamelワロタ
525デフォルトの名無しさん:2009/02/03(火) 16:08:22
ジャバスクリプトなんてオフにされたらおわりじゃん
526デフォルトの名無しさん:2009/02/03(火) 18:02:57
>>525
IE3使われたらおわりじゃん、と同じくらい、今では無意味な言葉だな。
527デフォルトの名無しさん:2009/02/03(火) 23:16:13
YOMBAN
http://www.yomban.jp/

ここのブックタイプのビューワーなんだけど
Flashかと思ったら
Javascriptでびびった

すげぇと思ってソース見たら
変換のアプリかなんかで自動生成してるっぽいんで萎えた
528デフォルトの名無しさん:2009/02/04(水) 09:59:25
早くそのツールが何かを問い合わせる仕事に戻るんだ。
529デフォルトの名無しさん:2009/02/04(水) 10:13:43
7行スレに貼り付けるんだ
530510:2009/02/04(水) 12:21:09
たくさんレスありがとうございます。だいぶ分かってきました。
すいませんあと一つだけ・・jQuery.jsの47行目で quick.exec() というメソッドが使われているのですが、これの定義部が見当たりません。
25行目で
var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,
と、していますが、execメソッドについては何もかかれていません。
exec()というのは何か特別なメソッドなのでしょうか??
531デフォルトの名無しさん:2009/02/04(水) 12:25:58
>>530
>quick.exec()
コピペは正確に。

>var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,
正規表現はRegexpオブジェクト。
あとはJSのリファレンス嫁。
532デフォルトの名無しさん:2009/02/04(水) 12:27:58
ゆとり...
取り返しの付かない失策だったな
533デフォルトの名無しさん:2009/02/04(水) 12:30:49
javascriptでは、スラッシュで囲まれた範囲は正規表現オブジェクトとなります。

引用符で囲まれたら文字列、"string" 'string'
かくばった括弧で囲まれたら配列、[1, 2, 3]
曲がった括弧で囲まれたらオブジェクト、{key1:value1, key2:value2}

のように。

exec()というメソッドは正規表現オブジェクトのもつメソッドのうちの一つです。
本やウェブで、javascriptの正規表現RegExpについて調べられると、ご参考になるとおもいます。
534デフォルトの名無しさん:2009/02/04(水) 12:31:13
>>525
Gmailみたいにプアな環境でも動くようにすればいいんじゃないの?
ぶっちゃけ、デスクトップアプリのマルチプラットフォーム対応に比べたら、
あくびが出るくらい楽。> 複数、新旧ブラウザ対応。
535デフォルトの名無しさん:2009/02/04(水) 13:24:14
JavaScript覚えたおかげでActionScriptもつかえるようになりました。
536510:2009/02/06(金) 15:32:54
>>530
>>533
ようやくすっきりしました。
ありがとうございましたm(_ _)m
537デフォルトの名無しさん:2009/02/11(水) 12:34:20
dojo で、いまドラッグアンドドロップしている最中ですよー的なイベントをフックしたいのですが、どう書けばよいでしょうか??
詳しい方いらっしゃたら教えて頂けると幸いです。
538537:2009/02/11(水) 12:38:15
すいませんdojoのバージョンは1.2.1です。
539デフォルトの名無しさん:2009/02/11(水) 14:20:16
連想配列をconcatみたいに簡単に連結する方法はありますか?
540デフォルトの名無しさん:2009/02/11(水) 14:27:00
>>539
標準ではない。prototype.jsのObject.extendを参照。
541デフォルトの名無しさん:2009/02/11(水) 14:40:25
>>537
ぐぐるんだ
542537:2009/02/11(水) 16:08:38
解決しましたm(_ _)m
543デフォルトの名無しさん:2009/02/11(水) 16:49:23
非同期通信でレスポンスが帰ってくるまで、マウスの左クリックを無効にしたいのですが、
どのようにすればよいでしょうか?
544デフォルトの名無しさん:2009/02/12(木) 12:35:50
同期通信にすればよろし
545デフォルトの名無しさん:2009/02/15(日) 16:00:38
なんか簡単に作れるのに人に見せたらスゲー、って言われるゲーム作れないかな
546デフォルトの名無しさん:2009/02/15(日) 16:02:11
作れるよ
547デフォルトの名無しさん:2009/02/15(日) 16:03:10
例えば?
548デフォルトの名無しさん:2009/02/15(日) 16:39:56
(-_-)
(∩∩) を押す倉庫番を作る
549デフォルトの名無しさん:2009/02/15(日) 16:40:42
タイトルは、俺しか押す者がいない予感
550デフォルトの名無しさん:2009/02/15(日) 19:19:07
倉庫番って作ったことないかも。ありがとう
551デフォルトの名無しさん:2009/02/15(日) 19:41:46
あとはテトリスか。
552デフォルトの名無しさん:2009/02/17(火) 20:18:43
テトリスってそんなに簡単でもない気が
553デフォルトの名無しさん:2009/02/17(火) 22:59:02
Cで7行で書けるんだろ?
テトリスって。
554デフォルトの名無しさん:2009/02/17(火) 23:04:27
それはJavascriptの間違いだろ
555デフォルトの名無しさん:2009/02/17(火) 23:53:16
>>552
簡単に作れるのに人に見せたらスゲーって言われる
556デフォルトの名無しさん:2009/02/18(水) 11:59:34
たしかに7行で書いてたらスゲーって思うかも知れんが
557素人:2009/02/24(火) 04:40:32
vb scriptって 検索しても少ないんですけど。だめなの?
558デフォルトの名無しさん:2009/02/25(水) 19:28:13
vb scriptで検索してここに着たんなら、いいよ。
559デフォルトの名無しさん:2009/02/26(木) 00:53:37
javascript
とmysqlを直接通信させる方法はないのでしょうか?
560デフォルトの名無しさん:2009/02/26(木) 08:37:53
XHRで通信ってことか?
JSではなくMySQLの仕様的に無理
素直にCGIとかサーブレットとか噛ませれ
561デフォルトの名無しさん:2009/02/26(木) 13:46:57
String型に自身を書き換える自作メソッドを追加したいのですが、thisへのstringの代入ではエラーが発生してできませんでした。
どのように書けば代入できるのでしょうか。

環境はJScript5.6 (ActiveScript)です。
562561:2009/02/26(木) 13:48:48
以下が、テストに使用したスクリプトの抜粋です

String.prototype.testMethod = function() {
  this = "test";
}

var test = String("aaaa");
test.testMethod();
563デフォルトの名無しさん:2009/02/26(木) 14:00:41
Javascriptの文字列はイミュータブルです。
564デフォルトの名無しさん:2009/02/26(木) 14:02:28
>>561
Stringを破壊的にすることはできない。thisは読み取り専用。
http://www2u.biglobe.ne.jp/~oz-07ams/prog/ecma262r3/10_Execution_Contexts.html#section-10.1.7
>this 値は不変である。

this書き換えれば〜という発想自体はユニークだけど
そもそも全てが参照渡しなんだから、たとえthisへの代入が許されても
「thisを書き換えれば自分自身が変わる」という仕様として設計されてないと
書き換えられないしなぁ。

要するにこれと同じ。
function foo(x) { x = "def"; }
var str = "abc"; foo(str); // strは"abc"のまま
565561:2009/02/26(木) 14:07:58
むー、testMetod内から自身の文字列を変更する方法ってないものでしょうか‥‥
566デフォルトの名無しさん:2009/02/26(木) 14:09:07
567デフォルトの名無しさん:2009/02/26(木) 14:31:43
testMethodの内外にかかわらず、「文字列を変更する」という
操作自体がJavaScriptには存在しないんだって。

むしろ何故thisを差し替える事をしたいのか目的を書いた方が
よりよい別のデザインを誰か教えてくれるかも。
568561:2009/02/26(木) 16:09:12
>>567
数式を数値や演算子、括弧単位に分解しようと思っています。
「256+14*3」であれば

var text = "256+14*3";
var token = new Array();
while(var a = text.getTolken()) {
 token.push(a);
}

でtokenが("256", "+", "14", "*", "3")になる形です。
※数値は実際には[0-9]だけではないです

処理自体は別の方法でも実現はできますが、Stringのメソッドとして実装できればコードが見やすくなるかなと思いまして。
569デフォルトの名無しさん:2009/02/26(木) 16:23:13
普通にstr.match(RegExp)すればええやん。
regexp(str)でもいいし。
570デフォルトの名無しさん:2009/02/26(木) 16:35:33
>>568
文字列を変更する必要性がまったくないな
>>569がいうような分ける関数作ったらいいだけでしょ?

String.prototype.getToken = function() {
  var formula = this.toString();
  var operator = /([+\-\*\/\%])/;
  return formula.split(operator);
}

alert("256+14*3".getToken());
571デフォルトの名無しさん:2009/02/26(木) 16:35:50
>>568
"256+14*3".match(/(\d+|\+|\*)/g)
// -> ["256", "+", "14", "*", "3"]

正規表現は自分で適当にして。
572デフォルトの名無しさん:2009/02/26(木) 17:01:55
try catch とか threw ってどういう目的で使うのでしょうか??
Firebug 使っているとエラーが出たときにちゃんと分かりやすくコンソールに出力してくれるので、あまり使う必要性を感じないのですが・・・
573デフォルトの名無しさん:2009/02/26(木) 17:05:01
narcissus javascript interpreterだと、
sytanx errorがあるとthrowで一気にトップレベルに抜けてる。
574デフォルトの名無しさん:2009/02/26(木) 17:23:09
>>572
デバッグ用途じゃない。
実行環境によってはエラーがでるかもしれない部分というのがあって
catchでエラー処理を行ってスクリプトが止まるような事態を未然に防ぐ。
ユーザーサイドでFirebugとかエラー文とか言ってもしょうがないでしょ。

実例は、参考になるかわからないけどprototype.jsあたりが多用してる。
わかりやすいところではcatch節を空にした
「エラー出るようならその部分は中断して後の処理を続行」というパターン。
575デフォルトの名無しさん:2009/02/26(木) 17:43:28
Enumerableのiteratorに渡す関数の中でthrowしたり、
evalJSONしたら変な入力でthrowされたり
ライブラリのユーティリティ関数がthrowするのは止められないし。
576デフォルトの名無しさん:2009/02/26(木) 18:23:38
finally で return の後に実行とか
577デフォルトの名無しさん:2009/02/26(木) 23:29:14
new ActiveXObject("Msxml2.XMLHTTP")
new ActiveXObject("Microsoft.XMLHTTP")
new XMLHttpRequest

これらのブラウザ機能を使わずにHTTP通信するJavaScriptライブラリ知りませんか?
578デフォルトの名無しさん:2009/02/27(金) 01:30:29
new ActiveXObject('MSXML2.ServerXMLHTTP.3.0')
579デフォルトの名無しさん:2009/02/27(金) 02:32:45
iframe使うライブラリですね。作ります。
580デフォルトの名無しさん:2009/02/27(金) 10:07:10
window.open("http://");
581デフォルトの名無しさん:2009/02/27(金) 10:13:29
なんでそれ使いたくないの?
582デフォルトの名無しさん:2009/02/27(金) 14:11:36
new ActiveXObject("Msxml2.XMLHTTP.6.0") でも
new ActiveXObject("Msxml2.ServerXMLHTTP.6.0") でも
使えばいいのに。
583デフォルトの名無しさん:2009/02/27(金) 14:18:34
IEでしか動かないね
584デフォルトの名無しさん:2009/02/27(金) 14:31:08
プラウザで動かそうとしているならWeb制作板で
585デフォルトの名無しさん:2009/02/27(金) 19:46:16
>>581
HTTPRequestHeader書き換えたいから
586デフォルトの名無しさん:2009/02/27(金) 22:45:57
解決したみたい^^;
587デフォルトの名無しさん:2009/03/01(日) 00:54:16
不本意ながら、使う羽目になってしまいました

どこぞに, 抽象構文木と抽象意味定義(表示的意味でも操作的意味でもいい)が
まとまってるところありまへんかぁ〜〜〜
588デフォルトの名無しさん:2009/03/01(日) 04:19:52
残念ながら知りませんが、何故必要なのかは興味があります。

コンパイラでも作るのですか?
あるいはコンパイラ人間さんでしょうか。
589デフォルトの名無しさん:2009/03/01(日) 04:32:57
>>588
単純に構文と各構文の持ってる意味を知りたいだけ

言葉で書かれると意味が曖昧になることあるし、読まなきゃいけないページ増えるし

仕様的にはそんな巨大な言語でもなさげなんで、scheme の r5rs 程度に
まとまっててくれてたら嬉しいかなと…
590デフォルトの名無しさん:2009/03/01(日) 04:51:19
言語を学ぶのにそんなやり方の人もいるのだと勉強になりました。
とりあえず規格は以下。

http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf
591デフォルトの名無しさん:2009/03/01(日) 14:30:20
>>590
ざっと目を通したんだけど、ブラウザ方言でサポートしてないとかってない?
592デフォルトの名無しさん:2009/03/01(日) 15:52:49
>>590
あるよ。

その仕様書で書かれている内容は大概実装していると思う。
ただ正規表現周りなど、実装間で振るまいが多少異なる事はある。

あと現実的にはDOMやAJAX周りなど、その仕様書とは別に導入
された拡張機能の部分、あとCSSなどJavaScriptと連携して使われる
機能に関してブラウザ間の実装の違いが問題になる事が多い。
593デフォルトの名無しさん:2009/03/03(火) 18:19:58
Javascriptの領域で良いのか不安なのですが、質問させて頂きたいと思います。

リストボックス(select)に複数のアイテム(option)にフォーカスがある時、
キーボードの矢印キーでカーソルが移動しますが、左右キーの場合はカーソル
移動させない方法は無いでしょうか。

左右キーで移動してしまったカーソルを、後から元の位置に戻すという対応以外で
方法を捜しています(組んでいるコードでリストボックスのonchangeで
別の処理を指定しており、左右キーではこれを動かしたくないため)
594デフォルトの名無しさん:2009/03/03(火) 18:36:20
>>593
onkeypressあたりで左右キーだったらreturn false;とかそんな感じ
595デフォルトの名無しさん:2009/03/05(木) 17:30:24
<style>
#below { width:100%; height:800; border:outset 1px; padding:0.5em }
#above { width:100%; height:400; top:110; left:0; position:absolute;
-moz-opacity: 0; opacity: 0; -khtml-opacity:0;
filter: alpha(opacity=0);
scroll; none; }
</style>

<div style="position:relative">
<div id="below">
<input style="position:absolute; left:160; top:200" type="submit" value="Click here">
</div>
<iframe id="above" src="http://b.hatena.ne.jp/add?mode=confirm&url=http://example.com/"></iframe>
</div>
596デフォルトの名無しさん:2009/03/05(木) 19:58:54
>>595
クリックジャッキングなんだろうけど、ウチの環境だとずれてるよ
597デフォルトの名無しさん:2009/03/05(木) 20:34:55
複数のImageオブジェクトの読み込みが全て完了したら、次の処理に行かせるようにしたく、
下記のようなコードにしてみたのですが、全て完了したことを示すalert処理が複数回実行されてしまいます。
Image().completeで判別するのではなく、imgStateという変数を作って重複実行を避けたつもりなのですがうまくいきません。
これはどうしてなのでしょうか。また対処法をご教授頂けますでしょうか。

var imgState = new Array(4);
var imgObj = new Array(4);
for (i = 0; i < 4; i++) {
 imgState[i] = 0;
 imgObj[i] = new Image();
}
function func() {
 imgObj[0].onload = function() {
  imgState[0] = 1;
  if (imgState[0] == imgState[1] == imgState[2] == imgState[3] == 1) {
   alert("All images are loaded. (0)");
   imgState[0] = imgState[1] = imgState[2] = imgState[3] = 0; // 重複実行対策
  }
 }

 (中略。前後のような[1].onloadと[2].onloadがあります)

 imgObj[3].onload = function() {
  imgState[3] = 1;
  if (imgState[0] == imgState[1] == imgState[2] == imgState[3] == 1) {
   alert("All images are loaded. (3)");
   imgState[0] = imgState[1] = imgState[2] = imgState[3] = 0; // 重複実行対策
  }
 }
 imgObj[0].src = "a.jpg"; imgObj[1].src = "b.jpg";
 imgObj[2].src = "c.jpg"; imgObj[3].src = "d.jpg";
}
598デフォルトの名無しさん:2009/03/05(木) 21:19:57
>>597
1==0==0==1
((1 == 0) == 0) == 1
(false == 0) == 1
true == 1
true

要するにちゃんと論理和を使えということ。
imgState[0] = true;
if(imgState[0] && imgState[1] && imgState[2] && imgState[3])
599デフォルトの名無しさん:2009/03/05(木) 21:21:30
論理積orz
600597:2009/03/05(木) 23:41:06
>>598
ありがとうございます、うまく行きました。
そこを誤っているとは思わず頭をひねらせてました。。。
601デフォルトの名無しさん:2009/03/07(土) 10:51:43
>>553-554
七行テトリスってホントにあったのか。ネタかと思ってたわw

http://pc3.2ch.net/tech/kako/1018/10188/1018840143.html
602デフォルトの名無しさん:2009/03/07(土) 22:01:59
http://pc11.2ch.net/tech/
このルーチンでエラーが出ている

function filterByLevel(level) {
if (isNaN(level))
level = 0;
var dls = document.getElementsByTagName("dl");
for (var i = 0; i < dls.length; i++)
if (dls[i].previousSibling && dls[i].previousSibling.tagName.toLowerCase() == "form"
&& dls[i].previousSibling.length == beRanks.length)
for (var j = 0; j < beRanks.length; j++)
if (dls[i].previousSibling[j].level == level) {
dls[i].previousSibling[j].style.borderStyle = "inset";
dls[i].previousSibling[j].style.fontWeight = "bold";
}
else
dls[i].previousSibling[j].style.borderStyle
= dls[i].previousSibling[j].style.fontWeight = "";
for (var i = 0; i < beLvs.length; i++)
if (beLvs[i].lv < level) {
beLvs[i].dt.style.backgroundColor = "#CCC";
beLvs[i].dt.nextSibling.style.display = "none";
}
else
beLvs[i].dt.style.backgroundColor
= beLvs[i].dt.nextSibling.style.display = "";
}
603デフォルトの名無しさん:2009/03/07(土) 22:04:28
604デフォルトの名無しさん:2009/03/07(土) 22:24:11
で?
605デフォルトの名無しさん:2009/03/10(火) 18:03:28
JavaScriptではオブジェクトは参照渡しされるって書いてあるサイトが
たくさんあったから試してみたけど どう見ても値渡しだった
ウソ書いてるやつらは反省しろ

function foo(a){
 a = {hoge:2};
}
var b = {hoge:1};
foo(b);
alert(b.hoge); //参照渡しなら2と表示されるはず
606デフォルトの名無しさん:2009/03/10(火) 18:39:42
新しいオブジェクト見るようにしたらダメだろう
君がやりたいのは多分これだ
function foo(a){
 a.hoge = 2;
}
var b = {hoge:1};
foo(b);
alert(b.hoge); //参照渡しなので2と表示される
607デフォルトの名無しさん:2009/03/10(火) 18:48:17
>>605
参照を値渡ししてるイメージだぜ

Cのダブルポインターみたいな事は、
>>606みたいにクラスで包んでやらなあかん
608485=487:2009/03/10(火) 19:05:08
>>605
C++の「参照渡し」とは違うよね。
そもそもC++の「参照」は、
一度だけ初期化できるエイリアスだから、

function foo(a){
a = {hoge:2}; ←二回目
}
var b = {hoge:1};
foo(b); ←一回目

と仮引数のaを二回初期化は出来ないし。

Javaの引数と一緒。
プリミティブ型は値渡し、それ以外はポインタ渡し。
609デフォルトの名無しさん:2009/03/10(火) 19:36:37
VBScriptでも試してみた

Class Bar
 Public hoge
End Class

Sub foo(ByRef a) 'ByRefで参照渡し、ByValで値渡し
 Set a = New Bar
 a.hoge = 2
End Sub

Dim b
Set b = New Bar
b.hoge = 1
foo b
alert b.hoge '参照渡しなら2、値渡しなら1

言語によって参照渡しと値渡しの意味が違うのか?
610デフォルトの名無しさん:2009/03/10(火) 19:38:05
605=609です
611デフォルトの名無しさん:2009/03/10(火) 20:07:23
値をコピーするのが「値渡し」
名前をコピーするのが「参照渡し」
612606:2009/03/10(火) 20:12:57
他の言語がどうなってるかちょっとわからないけど、>>605の場合は、

1.bがオブジェクトA({hoge:1})を指す
2.foo(b)でそのポインタ(?参照?)を渡す
3.関数fooの中の変数aはそのポインタが指してるところと同じところを指す
4.aが新しいオブジェクトB({hoge:2})を指す
(ここで指しているオブジェクトAを操作してるのが>>606

だからオブジェクトAを指しているbに何の影響もないのは当たり前のような感じがするんだけど、
他の言語ってどういう動きするんだっけ。
C++とか覚えてないな。
613611:2009/03/10(火) 20:33:43
「参照渡し」の参照と(単なる)「参照」は別物だからね。

JavaScriptは常に値渡し。
オブジェクトは(単なる)参照が値渡しされる。
614デフォルトの名無しさん:2009/03/10(火) 20:39:23
>>611>>613
一人で勝手に定義した言葉を得意げに語られてもね。
615デフォルトの名無しさん:2009/03/10(火) 20:46:00
>>614
えー。じゃ誰の言うことなら信じるのさー。
616デフォルトの名無しさん:2009/03/10(火) 20:49:58
英語版Wikipediaに面白い事が書いてあるね。
彼らの定義によれば(別に信じれってわけじゃない)、C++の参照渡しは
「Call by reference」なのに対して、PythonやJavaのは「Call by sharing」
なんだそうな。

で、この二つの違いは

>assignments to function arguments within the function aren't visible to the caller

ということで、まさにC++とJavaの「参照渡し」の違いを端的に説明して
いると思う。
この意味で言うと、JavaScriptのも「Call by sharing」と呼んでよさそう。
617デフォルトの名無しさん:2009/03/10(火) 23:44:23
単に>>605がオブジェクトリテラルの動作を理解してないだけの悪寒

618デフォルトの名無しさん:2009/03/10(火) 23:59:01
>>605
b = foo([3,4]) って, 書けばいいんじゃね?
619デフォルトの名無しさん:2009/03/11(水) 00:04:07
その「だけ」って単純化は意味も目的も分からない。

>>616
「Call by sharing」って命名はともかく、
「引数への代入が外から見えない」って定義の仕方はうまいね。


620デフォルトの名無しさん:2009/03/11(水) 02:53:04
JSONわかる香具師助けて。

http://www.cmegroup.com/CmeWS/md/MDServer/V1/Venue/G/Exchange/XALL/FOI/FO/Product/NA?currentTime=1236698042750&contractCDs=ESH9,NQH9,YMH9,EMDH9,NIYH9
からJSONデータ取得して eval で処理するところまではできたんだが、 message 内のデータが取得できない。

marketDataInfoAsStringList 内のデータ(例: data.marketDataInfoAsStringList.searchCriteria.exchange など)は取得できるんだが、 message 内の closePrice や ticker の取得ができない。
これは message[0] ってやればそれぞれ取得できると思ったんだが、それでもダメで途方にくれている

これは、下記ページ内の右メニュー「 Delayed Quotes: Equity Index 」欄で実装されてるんだけど、自分にはようわからん。
http://www.cmegroup.com/trading/equity-index/index.html

前にも似たような質問したんだけどいまだに自己解決しないのでわかる香具師いたらぜひ教えてほしい。
621デフォルトの名無しさん:2009/03/11(水) 04:36:30
>>616
俺もそのへんがモヤモヤしてたんだけど、なんか納得いった。
CBSは、C++で関数にポインタを渡してそこに代入しても、元のポインタには何の影響もないのと同じだな。
そうすると、CBRになるC++の参照渡しが特殊な事例なんだろうか。
622デフォルトの名無しさん:2009/03/11(水) 05:08:05
>>621
Cのマクロ、Lispのマクロ、Algolの名前渡し。
623デフォルトの名無しさん:2009/03/11(水) 10:15:15
>>620
普通に取れるみたいよ。

var w = unsafeWindow;
var url = 'http://www.cmegroup.com/CmeWS/md/MDServer/V1/Venue/G/Exchange/XALL/FOI/FO/Product/NA?currentTime=1236698042750&contractCDs=ESH9,NQH9,YMH9,EMDH9,NIYH9';
GM_xmlhttpRequest({
 method: 'get',
 url: url,
 onload: function(res){
  var message = eval("(" + res.responseText + ")").marketDataInfoAsStringList.message;

  for (var i=0,l=message.length; i<l; ++i) {
   for (var key in message[i]) {
    w.console.debug(key, " : ", message[i][key]);
   }
  }
 },
});
624デフォルトの名無しさん:2009/03/11(水) 11:49:31
>>622
そりゃCall by name。
参照渡しといえば、FORTRANが代表だろう。
625デフォルトの名無しさん:2009/03/11(水) 19:31:00
>>623
ああ。。本当だ!
スペシャルサンクス!

data.marketDataInfoAsStringList.message[0].ticker とすべきところを
data.message[0].ticker としていたのが問題だった。

>   var message = eval("(" + res.responseText + ")").marketDataInfoAsStringList.message;
が、かなり良いヒントになりまんた。ありがとう
626デフォルトの名無しさん:2009/03/12(木) 18:06:11
JavaScript 参照渡しと値渡しの罠 vol.1
ttp://d.hatena.ne.jp/toku-hiro/20070119

こういうのも参照渡しって言うのか
知らなかったよ
627デフォルトの名無しさん:2009/03/12(木) 19:48:19
>>626
分かってると思うがこれは間違いだよ

call by value
とか
call by reference
はcallするときに引数をそのまま(複写して)渡すか引数の場所(ポインター)を渡すかの違い
(call by nameは名前を渡すとか)

そのページに書いてあることは変数に値を代入するとき直値なのか参照なのかということ
628デフォルトの名無しさん:2009/03/12(木) 20:41:08
>>626
だから参照渡しの参照と単なる参照は別物なんだって。
値渡し/参照渡しの参照と基本型/参照型の参照は別。

JavaScriptは常に値渡し。
基本型は値(1とか8とか)がコピーされるし、
参照型は参照(ポインタ、場所の名前)がコピーされるの。

特に参照がコピーされるタイプを特にCall by sharingというの。
629デフォルトの名無しさん:2009/03/14(土) 22:58:49
JavaやJavaScriptのモデルは今や標準的なもの。RubyもPythonも同様。
call by sharing(共有渡し)またはcall by object(オブジェクト渡し)
がその名称。単にそれだけのことじゃん。
630デフォルトの名無しさん:2009/03/15(日) 22:29:47
createElement("iframe")で作ったiframeに例えばgoogleとかのサイトを表示しといて、
irame内のリンクをクリックすると、親ウィンドウごとリンク先に飛んじゃうけど、
iframeの中だけでリンク先に飛ぶようにするにはどうすりゃいいの?
631デフォルトの名無しさん:2009/03/16(月) 08:15:49
>>628
えー、オブジェクトも値渡しなの?プププ
632デフォルトの名無しさん:2009/03/16(月) 12:47:10
>>631
C++とJavaScriptの参照の扱いは違うのよ。

JavaScriptの場合、
オブジェクト(参照型)丸ごと値渡しなのではなくて
オブジェクトの参照が値渡しされるの。

参照が値渡しされることを「参照渡し」と言いたいなら勝手にしてね。
サイ本でも便宜上(?)そう表現してたし。
633デフォルトの名無しさん:2009/03/16(月) 15:32:59
よく判らないんだけどさ、「参照が値渡しされる」って
オブジェクトのアドレスが渡される様なイメージでいいのかな。
そんな事を言い出したら、コンピュータは所詮は全て値で処理してるんだから、
即値だろうとアドレスだろうと全て値渡しになっちゃいそうなんだけど。
「参照を値渡しする」って、つまりはどういう事?
634デフォルトの名無しさん:2009/03/16(月) 15:48:46
>>633
>オブジェクトのアドレスが渡される様なイメージでいいのかな。
おk。
ポインタのコピーだと思えばいい。
635デフォルトの名無しさん:2009/03/16(月) 16:02:37
>>633
本当の意味での参照渡しならcall時に実引数のアドレスが渡されるので
新しいオブジェクトを割り当てることが可能になる
>605 のように

Pascalとかだとそれが可能
636デフォルトの名無しさん:2009/03/16(月) 16:06:59
とすると、アセンブラ的には
値渡しかアドレス(参照)渡しかの2択しかない訳だ。
それをわざわざ「参照が値渡しされる」と呼ぶのは、
混乱の元だと思う。
637デフォルトの名無しさん:2009/03/16(月) 16:13:36
サイ本でもそうなら結局定義が曖昧なのか
638デフォルトの名無しさん:2009/03/16(月) 16:13:38
>>636
「〜渡し」は概念。

アセンブラ(や具体的な実装)を持ち出すと
話がずれてくる。
639デフォルトの名無しさん:2009/03/16(月) 16:17:58
「javaに参照はありません、全て値渡しです(キリッ」なんて言葉を昔聞いたことがある

たぶん、このマジックワードが原因で、参照の値渡しなんて言葉遊びが生まれたんだろう
640デフォルトの名無しさん:2009/03/16(月) 16:23:08
疑問なんだが
C++の参照とかJava,C#のボクシング/アンボクシングを
どうイメージしてるの?
641デフォルトの名無しさん:2009/03/16(月) 16:30:11
俺的理解。

>>C++の参照
スタックに積まずに他所のを横取りしたローカル変数。

>>Java,C#のボクシング/アンボクシング
コンパイラのお節介。
642デフォルトの名無しさん:2009/03/16(月) 16:47:24
一般論として、
参照渡し=ポインタ値渡し+アクセスのシンタックスシュガー。

ボクシング/アンボクシングは、
スロットにオブジェクトをまるごと埋め込むのか、
ポインタだけ置くのかの違いで、 渡しと直接の関係はない。

ただ、仮引数スロットに対するボクシング/アンボクシングを
考えることが出来るので、ANSI Cの構造体値渡しは、
Cの引数渡しでスロット埋め込み(ボクシング)を可能にしたと考えることも出来る。
C++の参照渡しは上に書いたように結局はポインタ渡しだから、
スロット経由の間接参照(アンボクシング)の系統である。
643デフォルトの名無しさん:2009/03/16(月) 16:48:31
>>641
> コンパイラのお節介。
シンタックスシュガーって言ってやれよ
644デフォルトの名無しさん:2009/03/17(火) 07:04:44
「渡し方」にはそのほかに「名前渡し(call by name)」と
「コピーリストア」(値渡しに加えて戻り時に局所変数の値を
実引数にコピー)があるね。FORTRANの引数渡しは言語規格上は
参照渡しだけでなくコピーリストアによる実装も除外されない。
645デフォルトの名無しさん:2009/03/17(火) 10:36:38
「コピーリストア」はどっちかというと実装方法じゃないかな。
「thunk」と一緒で。

「コピーリストア」はPOD(plain old data)オンリーだから
いかにもFORTRANらしい。
646デフォルトの名無しさん:2009/03/17(火) 17:57:17
せっかく2chなんだから、樹形図で表現するとどうなるだろう。
┬ 値そのものを渡すよ派
└ 値が格納されてるアドレスを渡すよ派
みたいな感じで。
647デフォルトの名無しさん:2009/03/17(火) 18:08:33
単なるポインタに参照なんて名前をつけるからややこしくなるんだろう
これからはJava/JavaScriptの参照のことをポインタと呼べ
648デフォルトの名無しさん:2009/03/17(火) 19:00:32
>>646
何の樹形図か書いてくれ。
>>647
ほんとそう思うわ。
649デフォルトの名無しさん:2009/03/17(火) 19:43:52
>>648
「2ch」で「樹形図」といえば↓コレ。
ttp://www.media-k.co.jp/jiten/wiki.cgi?%A1%E3%A4%A4%A1%E4#i13
650デフォルトの名無しさん:2009/03/18(水) 00:59:54
>>647
ポインタと参照は違うだろう。
実装と概念をごっちゃにしてどうする
651デフォルトの名無しさん:2009/03/18(水) 02:28:15
Cのポインタは概念でもある。
652デフォルトの名無しさん:2009/03/18(水) 02:39:03
>>651
>>647のいうポインタは、Cのポインタとも違うんだろう
653デフォルトの名無しさん:2009/03/18(水) 08:05:21
>>647
ポインタと参照はまるで違う。一緒くたにする人は、ポインタと配列の添字も同じに見える人なんだろうな。
654デフォルトの名無しさん:2009/03/18(水) 09:44:52
「まるで違う」も言い過ぎでしょ。
ポインタ⊂参照、じゃないかな。
655デフォルトの名無しさん:2009/03/18(水) 15:50:55

http://anond.hatelabo.jp/20090318112412

これ、コピペしても動かないみたいだけどなんで?
656デフォルトの名無しさん:2009/03/20(金) 11:59:13
IE8はどう?
657デフォルトの名無しさん:2009/03/20(金) 23:05:51
658デフォルトの名無しさん:2009/03/21(土) 14:57:03
安いな。いまさら要らないけど
659デフォルトの名無しさん:2009/03/21(土) 17:53:05
660デフォルトの名無しさん:2009/03/23(月) 23:29:23
661デフォルトの名無しさん:2009/03/25(水) 02:41:56
documentって参照しすぎると重いの?
getElementById使いまくってんだけど少なくしたほうがいいのかな
662デフォルトの名無しさん:2009/03/25(水) 03:04:34
「参照しすぎる」ってのが曖昧かな。
階層が深ければ、どんなオブジェクトでも参照コストが掛かるだろうけど
それはdocumentに限った話でもないだろうし。
getElementByIdは、せずに済むなら(tableとかformとか)そっちで参照した方が
参照コストは低いのかも。
一度得た物を使い回すとか。
663デフォルトの名無しさん:2009/03/25(水) 09:59:17
>>662
DOMはできるキャッシュはしたほうがいいけど
互換性捨てるほど重くはないでしょ
664デフォルトの名無しさん:2009/03/25(水) 14:52:47
JavaScriptでCGI書きたいんだけど、サーバ側のJavaScript Shellとして
SpiderMonkeyをインストールしてみたら、環境変数が取得できないみたい??

formからPOST METHODで送信されたデータを取得するのに
標準入力だけでコンテンツそのものは取れるけど、
CONTENT_LENGTHも調べたほうがいいよね?
そういえばGETで送られた場合はどうなるんだろう..

こういうのってSpiderMonkeyではむり? RhinoならrunCommandを使ってできる?
665デフォルトの名無しさん:2009/03/25(水) 17:22:17
>>664
$ js -v
JavaScript-C 1.7.0 2007-10-03
usage: js [-PswWxCi] [-b branchlimit] [-c stackchunksize] [-v version] [-f scriptfile] [-e script] [-S maxstacksize] [scriptfile] [scriptarg...]
$ js -e 'print(environment.LANG);'
ja_JP.UTF-8
666デフォルトの名無しさん:2009/03/25(水) 18:44:58
>>665
ありがとうございます!!
CONTENT_LENGTHもMETHODもちゃんと取れました!
感謝感謝!
667デフォルトの名無しさん:2009/03/25(水) 18:56:01
しかし、environmentなんてオブジェクトあったんですね...
ブラウザに組み込みのJavaScriptにはないですよね?
SpiderMonkeyのドキュメントでみつけられなかったし。
668デフォルトの名無しさん:2009/03/25(水) 18:57:57
>>667
逆にコンソールにwindowやdocumentあったらおかしいだろ
669665:2009/03/25(水) 19:10:23
俺も忘れてたから、ソースをgetenvでgrepした。js.cppにあった。
smjsをshellとして使う人は一度読んでおくことをお勧めする。
670デフォルトの名無しさん:2009/03/26(木) 02:37:12
FirefoxってinnerTextに値入れても反映してくんないんだね
innerHTMLならできたけど
なんかやり方間違ってる?べつにHTMLでも同じこと出来るからいいんだけど
671デフォルトの名無しさん:2009/03/26(木) 03:14:48
textContent
672デフォルトの名無しさん:2009/03/26(木) 17:19:04
673デフォルトの名無しさん:2009/03/26(木) 18:00:21
Firefoxの挙動がおかしいんじゃなくてIEがおかしいんじゃないの?
674デフォルトの名無しさん:2009/03/26(木) 18:46:24
FireFoxにparentElementがなくて>>670のように思ったことがある。
675デフォルトの名無しさん:2009/03/27(金) 16:43:30
環境条件とか、時間とかを入れて
そのときに、特定DIVのimg srcを任意に変えたりできるかな

<img src="Change('時間とか')" width="100" height="100">

changeみたいな関数に引数いれたら
javasc内の配列を見て、そのsrcを出してくれるような

onloadとか使えない状況下で…たのんます
676デフォルトの名無しさん:2009/03/27(金) 16:49:34
>>675
javascって何?
677デフォルトの名無しさん:2009/03/27(金) 16:50:52
ウチ間違いです
JavaScript
678デフォルトの名無しさん:2009/03/27(金) 18:07:57
そんな揚げ足とらずにsrc="Change"を突っ込もうぜ
679デフォルトの名無しさん:2009/03/27(金) 18:14:54
むしろstyle指定でないことにイラッときた。
で、WebProgは板違いが、模範回答でいいのかな。
680デフォルトの名無しさん:2009/03/27(金) 23:20:49
JavaScriptの文字列操作について質問があります。
(最終的には文字列に対して左から一文字ずつ取得し
その値の確認を行おうと思っているのですがどうやら
substringメソッドの挙動がおかしいです。

次のメソッドで@では正常に思った通りの動きを
してくれるのですが、ABではなぜか不正な値が
取得されてしまっています。
どこに問題があるのでしょうか?
※IE7.0を使用、LunaScapeでも同様の不正な挙動を
しています。


function Button1_onclick()
{

  var strTest = "abcdefg";
var strWork = "";

//@実行結果:"a"
strWork = strTest.substring(0,1);

//A実行結果:""
strWork = strTest.substring(1,1);

//B実行結果:"b"
strWork = strTest.substring(2,1);

}
681デフォルトの名無しさん:2009/03/27(金) 23:30:53
substringの第二引数の意味を調べてこい。
つか、勘定系の人?
ワークとかシステムハンガリアンとか、今時流行らんぜ。
682デフォルトの名無しさん:2009/03/27(金) 23:36:06
substr はレガシーなんだっけ
683デフォルトの名無しさん:2009/03/27(金) 23:36:10
charAt(index)使えばいいのに
684デフォルトの名無しさん:2009/03/27(金) 23:42:54
>>681
ありがとうございます!!
私は別に勘定系って事は無いです。ただ、確かにハンガリアン記法は嫌われている様ですが
個人的にこの方が好きです。(コーディングし易い)

あと、例えば次の文字列の中から"b"を取得するにはどうすれば良いのでしょか?
第一・第二引数が同じ場合には空文字が返るという事なので値の取得方法が分かりません。

var strTest = "abcdefg";
strWork = strTest.substring(1,1); //⇒"b"という文字列を取得する為にこのメソッドは使用できない。

そもそもC#/VB.netの場合には、substringメソッドではこの様に第一・第二引数が同じ場合には
空文字が返るだなんて仕様は無いのになぜJavaScriptにはあるのでしょうか?
なんかしっくり来ません。

685デフォルトの名無しさん:2009/03/27(金) 23:53:32
substring(start, end)なんだよ。
substring(start, length)じゃない。
アホかよ。
686デフォルトの名無しさん:2009/03/28(土) 00:00:27
じゃ、1文字目から1文字を取るにはどうするの?

substring(1,1)

が使えないじゃないか。という事はCharAt()を使うと理解してもいいですか?
687デフォルトの名無しさん:2009/03/28(土) 00:00:52
Substring(int startIndex, int length)

substring(start, end)
substr(start, length)
slice(start, end)
688デフォルトの名無しさん:2009/03/28(土) 01:49:26
お前ら親切だなぁ
689デフォルトの名無しさん:2009/03/28(土) 01:55:00
>>687
ありがとうございました。
690デフォルトの名無しさん:2009/03/28(土) 01:55:55
1文字しか取らないならcharAtで良かろう
691デフォルトの名無しさん:2009/03/28(土) 09:34:29
substring(start, end)===substring(end, start)に注意!
692デフォルトの名無しさん:2009/03/28(土) 11:15:14
>>691
お前さん質詳しすぎ
693デフォルトの名無しさん:2009/03/28(土) 11:31:29
ページA(PageA.html)内に

@リンク
A<div class=div_class_pageA>

を用意し@がクリックされるとAの中にページB(PageB.html)を
表示するにはどうすれば良いでしょうか?
inner htmlを書き換える? or iFrameを使用する?
どちらの方法が一般的なのでしょうか?

これまで私はWEBページを作成する場合に、左に一覧ページ、
右にコンテンツを配置という作りをしていたのですが、最近のWEBページでは
一つのページ内の上部にリンクボタンがあってそれをクリックすると、
画面の下部分にコンテンツが表示されていますのでそれの様な動きをする
ページにしたいと思っています。

694デフォルトの名無しさん:2009/03/28(土) 13:33:56
JavaScript内でオブジェクトがHTMLInputElementなのか、HTMLImageElementなのか、HTMLLabelElementなのか
を知りたいんですが、やり方が分かりません。
どのHTMLElementなのか(表現おかしいかったらすいません)を知るにはどうすればいいんでしょうか?

function getElementType(myElement){

  if (myElement.elementType == "HTMLInputElement"){
    return 0;
  }

  …
}

とかできたら嬉しいんですが…
695デフォルトの名無しさん:2009/03/28(土) 13:40:04
ブラウザ上のJavaScriptの話題はここは板違い。
Web制作板のJavaScript質問スレへどうぞ。
696694:2009/03/28(土) 13:44:27
すいませんでした。
Web制作板に逝ってきます。
ここでの質問は取り下げます。
697デフォルトの名無しさん:2009/03/28(土) 14:32:38
>>693
XMLHttpRequest
698デフォルトの名無しさん:2009/03/30(月) 09:13:32
lisp の unintern みたいな事って出来ない?

var foo = 'bar';
//何かの処理
if (baz)
// var foo = ... をなかったことにしたい
699デフォルトの名無しさん:2009/03/30(月) 10:38:34
>>698
delete
700デフォルトの名無しさん:2009/04/01(水) 18:18:05
質問です

txt = document.myFORM.myTEXT.value;
n = txt.length;
if (n > 10) alert("10文字以内にしてください");

はmyTEXTという名前のテキストフィールに10文字以上の文字があったときに警告を出すスクリプトですが、

テキストフィールがたくさんあった場合で
特定のテキストフィールだけ
上記と同じ警告を出す場合どのようにしたらいいでしょうか?
701デフォルトの名無しさん:2009/04/01(水) 18:38:33
テキスト「Dont think. Feel.」
702デフォルトの名無しさん:2009/04/01(水) 23:51:11
>>700
tanasinn...
703デフォルトの名無しさん:2009/04/02(木) 11:52:53
>>700
ブラウザ上のJavaScriptの話題は、Web制作板のJavaScript質問スレへどうぞ。
704デフォルトの名無しさん:2009/04/03(金) 03:16:26
wscriptのjavascriptで、importとかincludeを模倣したくて
  eval(loadFile("myModule.js"));
って書いてるんだけど、なんかかっこ悪いから
  import("myModule.js");
と書けるようにできないものかな。
2.0が来るまではwsfで書くしかないのかなあ。
705デフォルトの名無しさん:2009/04/03(金) 12:56:47
wscriptカッコ悪い
706デフォルトの名無しさん:2009/04/03(金) 14:43:47
できたよー\(^o^)/
function import(filename) { eval(loadFile(filename)); }
707デフォルトの名無しさん:2009/04/03(金) 15:10:23
>>706
それやるとevalで定義したオブジェクトはimport関数のスコープ内でしか使えないよ
708デフォルトの名無しさん:2009/04/03(金) 15:23:42
(´・ω・`)すまん忘れてくれ
709704:2009/04/04(土) 20:25:18
>>706-708
俺も最初それ書いて玉砕したw

いろいろ調べてみたんだけど、
結局JSANのデッドコピーみたいになってしまった。

function import(path) {
  var module = path.replace(/\.\w*$/, "");
  if(typeof this[module] == "undefined"){
    eval(loadFile(path));
    this[module] = eval(module);
  }
}
710デフォルトの名無しさん:2009/04/04(土) 20:55:49
ブラウザ上で動くJavaScriptのプログラムを行いたい場合、
バージョン的には1.5の規格で書けばよいのでしょうか?
711デフォルトの名無しさん:2009/04/04(土) 22:36:32
712デフォルトの名無しさん:2009/04/04(土) 23:50:52
ブラウザ以外で動くJavaScript環境って何があるの?
Adobe Director くらいしか知らないや。
713デフォルトの名無しさん:2009/04/04(土) 23:58:25
身近なところだとWSHとか。
ほかにはSpiderMonkeyとかも。

まあ、ブラウザ環境依存の質問じゃなきゃこのスレでも答えは出てくるだろうけど
714デフォルトの名無しさん:2009/04/05(日) 00:02:43
>>712
ブラウザに依存するような質問は板違いってことだろ。
別にサーバーサイド語れとかって意味じゃない。
715デフォルトの名無しさん:2009/04/05(日) 00:17:29
rihino
716デフォルトの名無しさん:2009/04/05(日) 00:26:32
リヒノキター!
717デフォルトの名無しさん:2009/04/05(日) 00:29:58
fishキター
718デフォルトの名無しさん:2009/04/05(日) 00:36:30
というか、最初からブラウザ非依存の話なんかできてないわけで。
719デフォルトの名無しさん:2009/04/05(日) 01:37:01
重複スレ立てるから勘違い君が来るんだよ。
このスレ終わったら次スレ立てずに
http://pc12.2ch.net/test/read.cgi/tech/1190160481/
へ合流しようぜ。
720デフォルトの名無しさん:2009/04/05(日) 09:33:24
ECMAScriptは、すでにブラウザで使われるJavaScriptとは別物になってしまったしな。
721デフォルトの名無しさん:2009/04/05(日) 10:19:47
javascript って, リスプで言うところのシンボル, もしくは c で言うところの
変数ポインタってなものはありませんか?
それとも、「eval しろ」何でしょうか?
722デフォルトの名無しさん:2009/04/05(日) 10:46:00
>>721
> c で言うところの変数ポインタ

kwsk

723デフォルトの名無しさん:2009/04/05(日) 10:47:59
>>721
おれにも変数ポインタ教えろw
724デフォルトの名無しさん:2009/04/05(日) 11:45:39
まあまあ、そう揚げ足をとらなんだ。
725デフォルトの名無しさん:2009/04/05(日) 11:57:16
>>722
int a; のとき &a って, 変数ポインタって言わない?
726デフォルトの名無しさん:2009/04/05(日) 12:05:35
言いません。
Cでは変数はファーストクラスのオブジェクトではありません。
その式の型はintへのポインタです。
Lispのsymbolとは根本的に違います。
727デフォルトの名無しさん:2009/04/05(日) 12:06:25
何をやりたいか説明すれば?
728デフォルトの名無しさん:2009/04/05(日) 12:17:25
>>726 あ、そうなんだ。一部の方言って事で許して

>>727
大量の入力フィールドからデータを掻き集めたい
こんな感じ

var inputs = ["input1", "input2", "input3", ...];
var vars = [var1, var2, var3, ...];
for (var i = 0; i < inputs.length; ++i)
vars[i] = ....ByID(inputs[i]).value;
729デフォルトの名無しさん:2009/04/05(日) 12:21:42
変数名から値を取り出すということなら、Objectを噛ませばやれる。
function foo(x) {
 var obj = {};
 obj.v = x;
 var name = "v";
 return obj[name];
}
グローバル変数の場合は勝手にグローバルオブジェクト(ブラウザならwindow)の
プロパティとして設定されるから、いきなりwindow[name]で読める。
730デフォルトの名無しさん:2009/04/05(日) 12:25:31
>>728読んでなかった。つーかそれなら連想配列でいいだろw
var values = {};
for (var i = 0; i < inputs.length; ++i)
values[vars[i]] = getElementById(inputs[i]).value;
731デフォルトの名無しさん:2009/04/05(日) 12:30:29
>>729
あ、なるほど。どうもありがとう。

>>730
それは、ちょっと違う。
732デフォルトの名無しさん:2009/04/05(日) 14:17:28
現在、IllustratorCSでちょっとしたアイコン(背景画像)を作ったのですが作成したアイコンのサイズが

【icon_image.gif】
 100px 50px(横・縦)

でその画像よりも、サイズの大きいブロック要素(<div>)の背景に設定しているのですが
そのブロック要素のサイズに一杯に画像を幅、縦共に拡大する方法とかってありますか?

毎回画面の要素のサイズに合わせて画像を作成するのもメンドクサイのでなんとか
css or htmlだけで対応させる事が出来ればと思っています。

 <div style="width: 350px;height=100; background-image: url(icon_image.gif); background-repeat: repeat-x;">
   あいうえお
 </div>


あと、もし<dic>で出来たならば、テーブルの<td></td>の背景画像にもしたいと思っているのですが、
<td>の背景に画像を拡大して表示させる事は可能でしょうか?
733デフォルトの名無しさん:2009/04/05(日) 14:22:14
>>731
> それは、ちょっと違う。

同じやんw
734デフォルトの名無しさん:2009/04/05(日) 14:23:34
さすがにそれはスレ違いか
735デフォルトの名無しさん:2009/04/05(日) 14:31:49
>>733
本質的には同じなんだろうけど、>>730 の場合, 既にあるオブジェクトとか
変数に突っ込めてないじゃん

威張って言うけど
javascript つつき始めたのは、一昨日から何だわ。>>730 だと、ピンと来ない
736デフォルトの名無しさん:2009/04/05(日) 14:33:22
ちょっと違うのはわかってる。
ちょっと変えれば素直に実装できるというか
ループ処理したくなるほど変数作る時点で設計ミスだと言いたい。
737デフォルトの名無しさん:2009/04/05(日) 15:05:49
>>736
いあ、もとは、俺が書いたコードじゃねぇし
元から、修正しようにも時間ねぇしw
738デフォルトの名無しさん:2009/04/05(日) 15:41:14
そんなことだろうとは思ったw
でもそんな状況でグローバル変数でもないならevalためらう理由もないな。
739732:2009/04/05(日) 16:17:48
誰か助けてー
740デフォルトの名無しさん:2009/04/05(日) 16:30:45
>>739
断る!
741デフォルトの名無しさん:2009/04/05(日) 16:32:28
>>739
Web制作板で聞けと。
大体Javascriptとどう関係が。
742デフォルトの名無しさん:2009/04/05(日) 16:37:17
はいはい春休み春休み
743デフォルトの名無しさん:2009/04/06(月) 01:07:09
>>742
死ね
744デフォルトの名無しさん:2009/04/06(月) 02:38:24
JavaScriptの正規表現について質問があるのですが、数字+「.(ピリオド」のみ入力を許す場合には
どう書けば良いでしょうか?

数字のみの正規表現は次で出来る事は分かっています。

match(/[^0-9]+/)
745デフォルトの名無しさん:2009/04/06(月) 03:05:22
>>744
数字+ピリオドで他の文字を一切含まないならこう
str.match(/^[\d.]+$/)
\dの代わりに0-9でもよい

[^0-9]+では数字以外になるので注意
746デフォルトの名無しさん:2009/04/06(月) 03:18:32
ピリオドのエスケープが足りなくない?
747デフォルトの名無しさん:2009/04/06(月) 03:31:18
あー確かに
一応JScriptでは動作確認したんだけど、基本はつけておくべきだよね
748デフォルトの名無しさん:2009/04/06(月) 03:43:45
修正版
str.match(/^[\d\.]+$/)
749デフォルトの名無しさん:2009/04/06(月) 13:38:23
>>746
[]内で本当に必要?
あったほうが無難という主張なら否定しない。
750485=487:2009/04/06(月) 15:35:31
[abc.xyz] = .ですやん
abc, xyzが何であっても(バックリファレンスは除く)
751デフォルトの名無しさん:2009/04/06(月) 16:07:35
>>750
それどこの定義だよw
ttp://www2u.biglobe.ne.jp/~oz-07ams/prog/ecma262r3/15-10_RegExp_Objects.html
CharacterClassにAtomを含んでない、つまり特別視されるのは\-]と先頭の^だけ。
実際にFx3でも/./と/[.]/の挙動は異なる。
752デフォルトの名無しさん:2009/04/06(月) 23:58:02
入力チェックで match とか冗談はよしてくれ
真偽値が欲しいだけなら test だ
753デフォルトの名無しさん:2009/04/07(火) 00:24:01
123..45.6. をマッチさせたところで、どうしたいんだろうか、、、
754デフォルトの名無しさん:2009/04/07(火) 01:42:14
「○○はもう正規表現を2chに書くな」と言わせないでくれ
755デフォルトの名無しさん:2009/04/07(火) 06:01:23
ワロタ
756名無し募集中。。。:2009/04/07(火) 06:30:35
サスペンダーはPerler以外は正規表現書くなって言いたいんだと思うぜ
JavaやCのプログラマは全体的にレベル高いけど
正規表現が得意な人は少ないだろうし
結局のところ
757デフォルトの名無しさん:2009/04/07(火) 06:55:19
> Cのプログラマは全体的にレベル高いけど
> 正規表現が得意な人は少ないだろうし

CのプログラマでもUnix育ちの人たちは、正規表現が得意な人多いよ
ed, sed, grep, awk あたりが, 正規表現の有用性を知らしめたと思ってる
758デフォルトの名無しさん:2009/04/07(火) 07:00:16
それCプログラマじゃなくてUNIXオペレータじゃん。
そしてUNIXのスクリプトと言えばPerl。
Perlと言えば正規表現。
Perlプログラマと言えばレベル高い。
めでたしめでたし。
759デフォルトの名無しさん:2009/04/07(火) 07:25:09
UNIX ならシェルだろ…
760デフォルトの名無しさん:2009/04/07(火) 11:11:27
PHPでcron用のスクリプト書いてごめんなさい
761デフォルトの名無しさん:2009/04/07(火) 11:37:05
あれここってなんのスレ?
762デフォルトの名無しさん:2009/04/07(火) 11:54:28
JavaScriptを含むプログラム関連の話題一般を語るスレ
単一言語しか書けなかったり単一環境にしか対応できないプログラマなんて都市伝説だろ
763デフォルトの名無しさん:2009/04/07(火) 14:18:25
でもUnix以外の環境って何があるんだ?
メインフレームとかいう話?
764デフォルトの名無しさん:2009/04/07(火) 16:19:45
これが韜晦という奴か。
765デフォルトの名無しさん:2009/04/07(火) 16:59:25
Windows以外は全部UNIXです。
766デフォルトの名無しさん:2009/04/08(水) 06:19:10
アダルトサイトの質問です。
クリックすると、ランダムでサムネイルとは全く違うURLに飛ばされます。
マウスポインタを合わせてリンク先を確認すると

http://adarutosaito.com/index.cgi?url=http://chuugakusei.co.jp/sayaka01.html
とか
http://amerikajin.com/script.php?http://roriita.co.jp/2009/0402/ayumi.html

のようになっていて、手動で削除すればできなくはないですがあまりに面倒なので
javascriptにやってもらう場合、どのようなスクリプトを組めばよいでしょうか?
自分ではいかが精一杯でした。おねがいします。

<script type="text/javascript">
//  初期の処理
if(url.match("http:.*http:"))window.alert(url);//  ここが重要!!
window.open(url, "");
</script>
767デフォルトの名無しさん:2009/04/08(水) 07:55:55
死ね
768デフォルトの名無しさん:2009/04/08(水) 09:23:32
つうかその手のヤツはurlに?がある時点で踏まない
769デフォルトの名無しさん:2009/04/08(水) 10:27:48
>>766
ブラクラだった。
770デフォルトの名無しさん:2009/04/09(木) 01:37:06
文字クラス[]の中で特殊な意味を持つ文字は、
^]-\の4種類だけ。\の解釈は実装により異なるし(POSIX完全準拠だと
ただの文字;JavaScriptでは違うが)、^]-については書く位置によって
エスケープは必要ないので、一切エスケープをしないようにしたほうがよい。
771デフォルトの名無しさん:2009/04/09(木) 01:46:36
>>770
>^]-については書く位置によってエスケープは必要ない
^は先頭以外、-は両端でいいだろうけど、]は?
772デフォルトの名無しさん:2009/04/09(木) 02:23:11
[]a] ]とaにマッチする
[^]a] ]とa以外にマッチする
[a]] エラー
773デフォルトの名無しさん:2009/04/09(木) 05:07:11
asciiコード覚えちゃってるからその通りに並べたくなって困る
774デフォルトの名無しさん:2009/04/09(木) 09:28:07
そんなアピールはいらんから
775デフォルトの名無しさん:2009/04/09(木) 10:29:11
>>770
\dとかも実装依存だから使うなってこと?
776デフォルトの名無しさん:2009/04/09(木) 11:12:42
その辺は実装依存と言うより仕様だな。
777デフォルトの名無しさん:2009/04/09(木) 23:27:04
どちらにしろ文字クラスの中で使うバカいねーだろ
778デフォルトの名無しさん:2009/04/10(金) 06:23:35
使うとなんかまずいの?
779デフォルトの名無しさん:2009/04/12(日) 13:44:56
1レス以内のスクリプトで評価パターンを作れるかというお題
http://pc11.2ch.net/test/read.cgi/hard/1235225061/940
780デフォルトの名無しさん:2009/04/14(火) 21:01:25
いろいろなJavascriptの実装で、
最後に改行を付けないprint関数はありますか?
またどういう名前、仕様ですか?
v8やseamonkeyはないですね。
tamarinもざっと見た感じなさそう。
781デフォルトの名無しさん:2009/04/15(水) 07:52:03
javascriptって最初のプログラム言語として難しい?
782デフォルトの名無しさん:2009/04/15(水) 08:09:04
難しくはない。
特に取り敢えず動かしてみたいという派にはうってつけと言える。
言語特性がどうとかまでやりたいならオススメしない。
783デフォルトの名無しさん:2009/04/15(水) 10:57:47
>>780
JScript.NETのConsole.Write() や
http://sourceforge.net/projects/njs/ の System.print(),System.stdout.write()
784デフォルトの名無しさん:2009/04/15(水) 12:19:24
>>781
どの環境かによるけど、エラーが判りにくい場合もあるから、
ほんとに自分で1からやるなら、ちょっとだけ工夫が必要。
785デフォルトの名無しさん:2009/04/15(水) 12:39:18
強い型付けの言語じゃないから、初学者向きだと思う。
786デフォルトの名無しさん:2009/04/15(水) 23:48:18
>>785
それはまったく逆だろw
Javascriptは上級者向きだっての。
787デフォルトの名無しさん:2009/04/15(水) 23:51:08
配列を含んだオブジェクトをコピーする方法を教えてほしい。
一つ一つコピーするのは面倒だ
788デフォルトの名無しさん:2009/04/15(水) 23:56:06
cloneじゃだめなん?
789デフォルトの名無しさん:2009/04/16(木) 00:00:42
function clone(o)
{
    var f = function(){};
    f.prototype = o;
    return new f();
};

これじゃあうまくいかないんだ。
enemyを変更すると、copy_enemyまで変更されてしまう。
小出しにしてすまない。

スクリプトのURL
www10.ocn.ne.jp/public_html/junken.html
790デフォルトの名無しさん:2009/04/16(木) 00:14:43
>>786
いや、違うだろ。根拠0で逆だろwとかバカか。

Javascriptは仕様もでかくないし、
難しい言語じゃないんで初学者向きだよ。
791デフォルトの名無しさん:2009/04/16(木) 11:21:02
前こんなの拾ったなぁ

function Object_clone() {
 var obj;
 var constructor = this.constructor;
 var obj = (constructor == Boolean ||
   constructor == Date ||
   constructor == Number ||
   constructor == String) ? new constructor(this.valueOf()) : new constructor();
 for (x in this) {
  var value = this[x];
  obj[x] = (value != null && typeof value == "object") ? value.clone() : value;
 }
 return obj;
}

Object.prototype.clone = Object_clone;
792デフォルトの名無しさん:2009/04/16(木) 15:39:14
>>791
>Object.prototype.clone
今更っていうかもう古い話題なんだろうな。
Object汚染について調べてみるといい。
793789:2009/04/16(木) 16:51:58
>>791
ブラウザーで動かすのは面倒なのでWSHでやってみました。
結果は、やはりだめでした。
794789:2009/04/16(木) 16:53:31
>>793
訂正
× やはりだめでした。
○ 成功しました
795デフォルトの名無しさん:2009/04/21(火) 18:30:42
>>790
自由度高い分、シートベルトのない言語だから初学者には難しいんでね?
初学者は補助輪のついた言語で支えて貰ったほうが楽だろ?
prototype継承とかclosureとかヒーヒー言いそうだし
796デフォルトの名無しさん:2009/04/21(火) 22:39:41
まぁ自由度が高い言語は他にもたくさんあるけど
一番の理由はまともな開発環境がないから簡単なエラーも実行するまで気がつかなかったりする
玄人ならああまたあそこ書き間違ったかって解るけど
そこまで達する前にたいがい挫折する
797デフォルトの名無しさん:2009/04/22(水) 12:13:45
firefoxとfirebugならそれなりの環境だと思う
ie6で開発すると死ねるな
798デフォルトの名無しさん:2009/04/22(水) 15:08:19
IE8でF12押すと派手な開発ツールが起動するぞ。まだ使ったことないけど
799デフォルトの名無しさん:2009/04/24(金) 15:15:18
つ JSLint
800デフォルトの名無しさん:2009/04/29(水) 01:59:57
function bar(){
        this.a = 100;
}
bar.prototype.init = function (a){this.a = a;}

function foo(){
        this.num = 100;
        this.init = function(a){bar.prototype.init(a);}
}
foo.prototype = new bar();

window.onload = function() {
        var obj = new Array();
    obj[0] = new foo();
    obj[0].init(10);
    obj[1] = new foo();
    obj[1].init(100);
    alert(obj[0].a + " " + obj[1].a);
}

init経由で値をセットすると、obj[0].aとobj[1].aの値が同じになるんだが、なんでそうなるんだ。仕様?それとも書き方が悪い?
801デフォルトの名無しさん:2009/04/29(水) 02:13:40
>>800
foo.prototype.aの値。init実行をコメントアウトすればわかる。

原因はここ。thisへの理解が足りてないし、そもそもこの行が不要。
this.init = function(a){bar.prototype.init(a);}
802デフォルトの名無しさん:2009/04/29(水) 03:27:33
>>801
足りてないってどういうこと?
803802:2009/04/29(水) 03:47:08
訂正
× 足りないってどういうこと
○ あー、なるほど。なぜそうなるかわかったような気がする。
804デフォルトの名無しさん:2009/04/29(水) 05:43:30
疑問符は依然付いたままなんだな。
805デフォルトの名無しさん:2009/05/01(金) 10:46:45
横やりだけど、自分が良く理解できてなかったから>>800について書いてみます。間違ってたら教えてください。
fooにthis.initがある場合は、this.a = aのthisがbarだから最後にalertで値を確かめても代入した値になってない。
(※の部分でname見て確認してみた。)
なので、thisがobj0やobj1になるようにしたら良いからbar.prototype.init.call(this, a);ってすれば良い。
でも、そもそもinitはbarから受け継いでるから、このthis.initはいらない。それが>>801の話。
という理解なんですけど、どうですかね?
(最後の両方100になるのはobj[1].init(100)のせいではなく、fooのaの値が100だからってことに気付かずハマってずっと考えてた。。)

function bar(){ this.a = 100; }
bar.prototype.name = 'bar';
bar.prototype.init = function (a){
  this.a = a;
  alert(this.name);  // ※
}

function foo(){
  this.a = 110;
  this.init = function(a){ bar.prototype.init(a); }
}
foo.prototype = new bar();
foo.prototype.name = 'foo';
foo.prototype.setName = function(name) { this.name = name || 'foo'; }

var obj = new Array();
obj[0] = new foo();
obj[0].setName('obj0');
obj[0].init(10);
obj[1] = new foo();
obj[1].setName('obj1');
obj[1].init(20);
alert(obj[0].a + " " + obj[1].a);
806デフォルトの名無しさん:2009/05/01(金) 11:13:16
>>this.a = aのthisがbarだから
まーあれだ。きちんと勉強しなおしとけ!でございますことよ。
807デフォルトの名無しさん:2009/05/01(金) 15:07:22
prototypeプロパティを特別視しすぎてるようにも見える。
プロトタイプチェーン以外ではなんの特別性もないし
当然その値になってるオブジェクトにもなんの特別性もない。

var obj = bar.prototype;
this.init = function(a){ obj.init(a); }
と書けば委譲起こしてるのがわかるんじゃない?

ここでは委譲は不要で関数(いわゆるメソッド)が欲しいだけだから
this.init = bar.prototype.init;
Function.prototype.callなんてわざわざ使うまでもない。

そしてプロトタイプチェーンが繋がってるからこんな代入もイラネってこと。
808デフォルトの名無しさん:2009/05/03(日) 05:29:04
>>805-807
ありがとうございます。
barのinitを外したら動きました。
しかし、これだと、foo.initで適当なタグを追加して、bar.initでさらに別のタグを追加するということができなくなってしまいます。

<?php
class foo{
        public $a;
        public function init($a)
        {
                $this->a = $a;
        }
}
class bar extends foo{
        public function init($a)
        {
                //適当な処理
                print("call bar");
                parent::init($a);
        }
}

$list[] = new bar();
$list[] = new bar();
$list[0]->init(100);
$list[1]->init(10);
print_r($list);
?>
phpで似たようなコードをかくと、要素ごとに分かれるので、素直にPHPを使えということなのでしょうか
809デフォルトの名無しさん:2009/05/03(日) 13:03:09
>>808
function A() {}
A.prototype.v = "";
A.prototype.add = function () { this.v += "a" };
function B() {}
B.prototype = new A();
B.prototype._parent_add = B.prototype.add;
B.prototype.add = function () { this.v += "b"; this._parent_add(); };
var o = new B();
o.add()
alert(o.v); // "ba"

なにが正解かはわからないけど、できる。
単純故に不親切、でも単純だからやりようはある。
810デフォルトの名無しさん:2009/05/03(日) 21:09:43
>>809
なるほど。
その手があったか。
それは思いつかなかった。
ありがとう。
811デフォルトの名無しさん:2009/05/09(土) 06:54:32
function A() {}
A.prototype.name = 'A';
A.prototype.init = function(a) { this.a = a; }
function B() { A.call(this); }
B.prototype = new A();
B.prototype.constructor = B;
B.prototype.name = 'B';
B.prototype.init = function(a, b) { A.prototype.init.call(this, a); this.b = b; }

単にメソッドチェーンしたいだけならこれで。
812デフォルトの名無しさん:2009/05/10(日) 03:50:05
使っている言語は、Java

あるサイトに自動的にログインして、中のデータを取ってきて
DBに入れたい


自動的にログインするのって、Javascriptの範囲なんですか?
813デフォルトの名無しさん:2009/05/10(日) 10:24:12
>>812
一旦言語そのものからは離れてHTTP通信について勉強しておいで。
814デフォルトの名無しさん:2009/05/11(月) 12:25:33
jqueryで以下の操作を行うと一番最後だけ成功時の関数が呼ばれない。
どうにかする方法はない?

1.$.ajaxでGETリクエストを投げる(ifModified:true) -> GetAllMessage
2.取得した大きさをOLDに代入
3.$.ajaxでGETリクエストを投げる(Range:Bytes="+OLD+"-") -> UpdateMessage
4.再び1を行う。 -> GetAllMessage

ソースファイル:
www.csync.net/service/file/view.cgi?id=1242012261
815デフォルトの名無しさん:2009/05/11(月) 14:52:42
>>814
すまん。自己解決した。
4で再びすべてのデータを取得しようと思っても、statusの値がnotmodifyedになってしまい、sucessで指定した関数が呼ばれないのが原因だった。
板を汚して済まん。
816デフォルトの名無しさん:2009/05/11(月) 23:12:21
prototype.js についての質問です。
Ver1.6です。

Class.createの引数にオブジェクトリテラルで追加すべきものは、何になるのでしょう?
クラス(static相当)メソッドはextendですよね?
インスタンスメソッドとプロパティでしょうか?
prototypeに突っ込まれるとなると、プロパティも入れないほうがいい?
initializeでプロパティを設定すべきで、ここでは、クラス変数のみ?
なお、継承の際の第一引数の親クラスは、この話の対象外とします。

識者の方、よろしくお願いします。
817デフォルトの名無しさん:2009/05/11(月) 23:28:47
どれが質問か分かりにくい。まず日本語整理してくれ
818デフォルトの名無しさん:2009/05/11(月) 23:41:56
メインの質問
・Class.createの引数にオブジェクトリテラルで追加すべきものは、何になるのでしょう?
私の認識
・クラス(static相当)メソッドはextendを使ったほうが良さそう
・インスタンスメソッドとプロパティを引数とすべきかな
・でも、prototypeに突っ込まれるとなると、プロパティも入れないほうがいいか
・プロパティはinitializeで設定すべきで、引数にはクラス変数のみ入れるものかな

といったところで、解釈していただけますでしょうか。
819デフォルトの名無しさん:2009/05/12(火) 01:50:08
>>818
慣れた言語での例と、それを自分なりに書き換えたサンプルをplz
820デフォルトの名無しさん:2009/05/12(火) 02:37:57
これはひどい
読解力が致命的に欠如してるのはまあ100歩譲って仕方ないとして、
わざわざ箇条書にしてくれてるのにスルーしてサンプル要求とかもはやイミフ
答える気がないなら黙れよ害虫


>>818
>>816の時点であなたの理解度は伝わります
プロパティは普通は入れない
以上
821485=487:2009/05/12(火) 06:34:13
>>816
prototpye.jsのAjax..Request, Ajax.Responseみたいに、
プロパティをObject.createに渡しているのもあるぞ。
Responseの方はinitializeでoverwriteしている。
822デフォルトの名無しさん:2009/05/12(火) 06:37:15
プロパティの動的な追加はまとめてやった方が、
処理速度的に有利な実装がある。
v8とか。(詳しくはv8のドキュメントを)

823デフォルトの名無しさん:2009/05/12(火) 08:21:33
インスタンスの状態を表すプロパティなんかをprototypeにぶら下げても仕方ないよって話ではないかと
デフォルト値として初期化前に参照できるようにする人もいるけど
いつもプリミティブな値だとは限らないからね
824デフォルトの名無しさん:2009/05/12(火) 10:09:22
FireFoxて、document.readyStateを使えないのでしょうか?
<html>
<body>
<script type="text/javascript">
document.write("readyState:"+document.readyState);
</script>
</body>
</html>

これをFireFoxで実行すると
readyState:undefined
になってしまいます。

ちなみにFireFoxのバージョンは
Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10
です。
825デフォルトの名無しさん:2009/05/12(火) 10:11:23
投稿して気づきました。
「JavaScriptはWEB製作板へ」って書いてました orz
板違いすみません。吊ってきます。
826デフォルトの名無しさん:2009/05/12(火) 12:47:47
PHPからのデータをajaxで取得して、htmlを書き換えようとしています。
データは正常に取得でき、表示はされるのですが、一瞬で消えてしまいます。
何が原因か心当たりの方はいないでしょうか?

ajaxでPHPの呼び出しと取得
if(window.XMLHttpRequest) {
ajax = new XMLHttpRequest();
} else if(window.ActiveXObject) {
try {
ajax = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
}
ajax.open("get", "ajaxPrintTest.php", true);
ajax.onreadystatechange = function() {
if (ajax.readyState == 4 && ajax.status == 200) {
var obj = document.getElementById('print');
obj.innerHTML = ajax.responseText;
}
}
ajax.send("");
HTML側
<form onsubmit="return upLoad()">
名前:<input type="text" id="name" name="name" />
<input type="submit" value="送信" />
</form>

<div id="print" ></div>
827デフォルトの名無しさん:2009/05/12(火) 12:49:49
PHPからのデータをajaxで取得して、htmlを書き換えようとしています。
データは正常に取得でき、表示はされるのですが、一瞬で消えてしまいます。
何が原因か心当たりの方はいないでしょうか?
828デフォルトの名無しさん:2009/05/12(火) 12:51:13
すみません、連続して送ってしまいました。m(_ _)m
829デフォルトの名無しさん:2009/05/12(火) 13:26:39
そのコードがupLoadで実行されてんのなら
upLoadの戻り値に問題があるんじゃない
830826:2009/05/12(火) 14:35:49
解決しました。
戻り値を設定していませんでした。
ありがとうございました。
831デフォルトの名無しさん:2009/05/13(水) 01:51:27
>>823
仕方ないとか意味がわからん
832デフォルトの名無しさん:2009/05/13(水) 11:23:59
>>831
メソッドは同じの使い回すけど、プロパティ値を使い回すってパターンがあんまりないから仕方ないってことでしょ。
833デフォルトの名無しさん:2009/05/13(水) 11:29:08
prototype.jsで使われてる。
834デフォルトの名無しさん:2009/05/15(金) 06:27:13
でっていう

もう一度よく読め
835デフォルトの名無しさん:2009/05/15(金) 12:40:11
initialize:
値をオブジェクト間で共有するわけにいかないもの
コードを実行しないと初期化できないもの
create:
それ以外

って使い分けてる。
836デフォルトの名無しさん:2009/05/16(土) 01:38:31
SpiderMonkeyって「"!\"#$%".toSource()」の返り値が「(new String("!\"#$%"))」になるけど、
単に「"!\"#$%"」では駄目な理由ってあるのかな?
「/o(chi|ma)nko/.toSource()」は「/o(chi|ma)nko/」を返すのに。
837デフォルトの名無しさん:2009/05/16(土) 03:24:51
メソッド呼び出し時にはオブジェクトに変換されるから。
単なる文字列リテラル形式がほしいならquoteでどうぞ。
838デフォルトの名無しさん:2009/05/16(土) 04:35:30
なるほど、リテラルがプリミティブな型かどうかで違ってくるのか。
配列、関数、正規表現なんかはリテラルでもオブジェクトだから、リテラル表記が返るわけだ。
839デフォルトの名無しさん:2009/05/17(日) 18:44:56
function sidEventListener(){
        var cmd = new CommandParserWhenPost;
        var text = cmd.parse(document.chat_form.message.value);
        $.post("./chat.php",{name:document.chat_form.name.value,message:text,color:document.chat_form.color.value,state:"sid",rno:document.chat_form.rno.value});
        document.chat_form.message.value ="";
}
function CommandParser()
{
        this.word = new Array;
        this.CommandList;
        this.parse = function(text)
        {
                this.word = text.split(" ");
                if(this.CommandList[this.word[0]])        return this.CommandList[this.word[0]](this.word);
                return text;
        }
}
function CommandParserWhenPost()
{
        this.CommandList = new Array;
        this.CommandList["/dice"] = function(word)
        {
                var util = new Util;
                return  "サイコロを投げた。出た目は"+ util.get_random_number(1,6) +"だ";
        }
}
CommandParserWhenPost.prototype = new CommandParser;

/diceの部分で名前も操作したいんだが、グローバル変数を使う方法しか思いつかない。
きれいな方法があったら、誰か教えてくれ。
840デフォルトの名無しさん:2009/05/17(日) 19:30:50
1.その環境で唯一無二の「自分の名前」ならグローバルかそれに近いもので構わない
2. cmd.parse(user, text) ユーザ情報が必要なコマンドがあるなら素直に渡しとけ
3. user.cmd.parse(text) ユーザ単位でパーザ作ればいい

どうでもいいけど乱数判定は出来る限り鯖でやるのが基本
841デフォルトの名無しさん:2009/05/17(日) 20:45:50
>>840
ありがとう。
2でやってみるわ。
842デフォルトの名無しさん:2009/05/17(日) 21:16:48
すまん「A : Aはサイコロを投げた」のつもりで説明してたけど
「A(dice) : サイコロを投げた」がやりたいなら
メッセージのフィルタ処理しかできない現状の構造自体が悪いな
俺ならコマンドの内側で通信させる

say = function(user, msg) {
 $.post({name: user.name, message: msg});
}
dice = function(user) {
 say(user.name + "(dice)", "サイコロを投げた");
}
843デフォルトの名無しさん:2009/05/17(日) 22:03:34
>>842
すまんが、その通りだ。
/diceの部分で名前をしてステムに書き換えて、サイコロを投げたというにしたいんだ。

>メッセージのフィルタ処理しかできない現状の構造自体が悪いな
ほむー。
いまのところ、フィルター処理を行っているところでこういう風にする予定なんだが、これだと後々まずいんだろうか。


        this.CommandList["/dice"] = function(word)
        {
                var util = new Util;
                var obj = new obj;  //別の場所で定義したオブジェクト
                obj.text = "サイコロを投げた。出た目は"+ util.get_random_number(1,6) +"だ";
                obj.name = "system";
                return obj;
        }

布石みたいなものがあったら教えてほしい。
844デフォルトの名無しさん:2009/05/18(月) 03:53:31
?(゜д゜;三;゜д゜)?
845デフォルトの名無しさん:2009/05/18(月) 08:42:33
>>839
重大なバグを1つ教えてやろう。
diceはdieの複数形だ。
わかったか低学歴。
846デフォルトの名無しさん:2009/05/18(月) 10:13:16
そういう細かいところをひろって差をつけるしかない程度の高学歴か
847デフォルトの名無しさん:2009/05/18(月) 16:34:04
うむ、小学生みたいな高学歴だな
848デフォルトの名無しさん:2009/05/18(月) 17:38:05
定石?後々だから布石でいいのかw

obj作ってreturnするぐらいなら、ポストデータを渡して改変させるほうが早いし柔軟
var param = { name: name.value, message: text };
cmd.parse(param);
$.post("./chat.php", param);

そしてコマンド処理に主導権を与えるかどうかは用意するコマンドの予定と好みの問題
その程度ならどっちでもいいと思う、というか判断するには情報足りない

>>843の手法は機能限定+お手軽を目的としたプラグインシステムが使う手という印象
>>842はよくも悪くもコマンド処理の権限・責任が大きい
代わりに例えば「/color red」というようなクライアントの状態を変えるだけ(通信不要)のコマンドが可能になる

というと後者のほうが無難そうに見えるかもしれないけどYAGNIだったってこともよくある
行き詰まったらリファクタリングすればいいんだから、やりたいようにやればいいさ
849デフォルトの名無しさん:2009/05/18(月) 19:03:22
しまった。定石と書くところを布石としてしまった
>>848
ありがとう。
やりたいようにやってみます。
850デフォルトの名無しさん:2009/05/18(月) 19:37:08
>>847
そしておまえは小学生以下www
851デフォルトの名無しさん:2009/05/19(火) 16:41:03
window.opener及びwindow.closeで質問です。
子ウィンドウを新しく表示し、親ウィンドウを閉じる処理をJspファイルで以下のように
実装を行ったのですが、外部からのアクセスを行うとウィンドウが親ウィンドウ及び子ウィンドウが瞬間的に開いてから、
すぐに、閉じてしまいます。ローカルからのアクセスでは問題ありませんでした。

window.open('{pageContext.request.contextPath/********.do','_blank',menubar=no,****);
window.opener = "dummy";
window.close();

よろしくお願い致します。
852デフォルトの名無しさん:2009/05/19(火) 16:57:07
問題なかったんだw
853デフォルトの名無しさん:2009/05/19(火) 17:36:29
>>851
そういうのは、Web関係のスレで聞いたほうがいいんでは?
854デフォルトの名無しさん:2009/05/20(水) 12:47:17
>>853
聞いたけど、まともな返答が貰えなかったから、コッチに北みたい
855デフォルトの名無しさん:2009/05/20(水) 20:44:16
MDIEってソフトのスクリプト機能に以下の機能を組み込みたいんですが、文字列の操作ってやつがわかりません。

・複数のファイルの先頭に入力した文字列を付加できるようにしたい
・入力した文字列を一律で削除したい

要はリネーム機能なんですが、リネームソフトとかわざわざ使いたくないので自分で作ろうと思ったんですが
アドバイスいただけませんか?
プログラミングはかじったことある程度です。
856デフォルトの名無しさん:2009/05/20(水) 20:53:32
>>855
newFilename = inputString + filename;
newFilename = filename.replace(inputString, "");

ファイル名の取得方法とか変更方法とか入力受付とかまではスレチだからシラネ
857デフォルトの名無しさん:2009/05/20(水) 21:32:25
>>856
レスありがとうございます。
やっぱりスレ違いですよねー。とりあえずもうちょい自分でやってみてから
MDIEのスレで質問してみます。
858デフォルトの名無しさん:2009/05/22(金) 17:59:46
Ctrl + マウスホイールの制御を行いたいです。
どなたか教えてください。
859デフォルトの名無しさん:2009/05/22(金) 19:35:56
860デフォルトの名無しさん:2009/05/22(金) 21:45:44
shadowbox 3.0b バグ大杉。
861デフォルトの名無しさん:2009/05/29(金) 11:55:41
Google Maps API便利だけどまだバグが多いな
GPlolylineのlineupdatedイベントはいらいらする
862デフォルトの名無しさん:2009/06/03(水) 13:10:58
質問させてください。
JavaScriptにて、onclickの中身を取得すると
function onclick(event) { ... }
のような形になるのですが、lengthを取得すると1になります。
onclickの内部を置き換えたいのですが、どのようにすればいいのでしょうか?
863デフォルトの名無しさん:2009/06/03(水) 13:19:51
864デフォルトの名無しさん:2009/06/08(月) 00:45:26
>>766ですが、解決しました。
ご心配おかけしました。
865デフォルトの名無しさん:2009/06/20(土) 07:48:41
皆さん、とても詳しそうなので、質問させて下さい。

絵文字のリストを表示させるスクリプトがあるのですが、これを外部ファイルから読み込む形で、ブログのコメント入力エリアに表示させたいと思っています。
6行目のwindow.document.writeが修正箇所だと思ったのですが、私の乏しいJavascriputの知識では、どこをどう修正すればいいのか分かりません。
ブログ側の設定で、個別記事のHTML部分は修正する事ができず、表示させたいコメント入力エリア部分から直接外部ファイルを読み込ませる事ができない仕様になっています。

アドバイスを頂ければ幸いです。
:
866デフォルトの名無しさん:2009/06/20(土) 07:49:35
絵文字のリストを表示させるスクリプトは以下のようになっています。

*********************************************
function writeCustmizeEmojiTagList() {
var textarea = 'document.forms[1].article_child__body';
var list = getCommentEmojiList();
var att = getCustmizeEmojiAttribute();
for (var i = 0; i < list.length; i++) {
window.document.write('<a href="javascript:;" onClick="addCustmizeEmoji(' + textarea + ', \'' + list[i][0] + '\');"><img src="' + emojiImagePass + list[i][1] + '" alt="(' + list[i][0] + ')" ' + att + ' /></a>');
}
}

// reference from jugem.jp (c)
function addCustmizeEmoji(obj, tag) {
var item = '(' + tag + ')';
if (document.selection) {
obj.focus();
sel = document.selection.createRange();
sel.text = item;
} else if (obj.selectionStart || obj.selectionStart == '0') {
var startPos = obj.selectionStart;
var endPos = obj.selectionEnd;
obj.value = obj.value.substring(0, startPos)
+ item + obj.value.substring(endPos, obj.value.length);
} else {
obj.value += item;
}
}
writeCustmizeEmojiTagList();
:*********************************************
867デフォルトの名無しさん:2009/06/20(土) 07:50:51
>>865=>>866です<(_ _)>
868デフォルトの名無しさん:2009/06/20(土) 10:15:49
>>867
スレ違いだし、無理。
869デフォルトの名無しさん:2009/06/20(土) 12:12:19
日本語ひどくて読む気になれんな。
何が出来てて何ができてないのか。
870865:2009/06/20(土) 18:21:02
説明不足ですいませんでした

>>866のスクリプト側に問題はなくて、ブログ側で個別記事のHTMLの編集が出来れば、
任意の場所に絵文字のリストを表示させる事ができます。

でも、無料のブログサービスを利用していて、トップページ以外のHTMLは編集できないようになっています。
Javascript側で、修正が可能ならばと思って質問させてもらいました。

スレ違いなんですか・・・・・・Javascriptに関する質問なので、大丈夫だと思ったのですが、
スレ汚し失礼しました。
871デフォルトの名無しさん:2009/06/20(土) 18:31:28
JS使ってるだけで中身はHTMLやDOMの質問だしね
web制作板のJSスレならそのへんも管轄
872デフォルトの名無しさん:2009/06/21(日) 20:00:12
Javaとぜんぜん違うのにJavaScriptを名乗るな
まぎらわしい
873デフォルトの名無しさん:2009/06/22(月) 15:37:07
>>872
文句はそーいうことを許したSunに言ってくれ。
874デフォルトの名無しさん:2009/06/22(月) 21:39:37
PythonとかLispに比べるとかなりJavaっぽいじゃん
875デフォルトの名無しさん:2009/06/23(火) 05:29:11
言語仕様的には、JavaよりもむしろPythonに近いけどな。
876デフォルトの名無しさん:2009/06/23(火) 07:59:18
そりゃスクリプト言語だからな
877デフォルトの名無しさん:2009/06/23(火) 17:28:11
>>876
>>875が言ってるのはJavaScript 1.7以降Pythonを積極的に取り入れてるって事では?
ジェネレーターとかイテレーターとか配列内包表記とか
878デフォルトの名無しさん:2009/06/24(水) 00:38:16
なんというゆとり
879デフォルトの名無しさん:2009/06/24(水) 21:08:01
以下のコードで、年を出そうと思うのですが、109と出ます。
2009を出したい出です。

<SCRIPT language="javascript" type="text/javascript">
this.main();

function main(){
var date = new Date();
var iYear = date.getYear();
document.write(iYear);
}

</SCRIPT>
880デフォルトの名無しさん:2009/06/24(水) 21:29:16
iYear + 1900
881デフォルトの名無しさん:2009/06/24(水) 21:31:07
むしろ、 date.getFullYear()
882879:2009/06/25(木) 21:28:55
Windows xpで、date.getYear() は、2009
Mac OS X Tig で、date.getYear() は、109
でした。
なんで、こう、ちがうんだろ。
883デフォルトの名無しさん:2009/06/25(木) 21:54:23
>>882
FullYearの方を使うべし
884879:2009/06/25(木) 22:34:12
>>883
どうも。ありがとう。
885デフォルトの名無しさん:2009/06/25(木) 22:36:48
処理系による。
もともと1900年からのオフセットだったけど、何をトチくるったか
2000年を越えたときに西暦をそのまま返しちゃうという
Excelと間違えたかのような勘違い実装しちゃったブラウザが出現。
影響力が大きかったので他のブラウザもそれに追随してしまったり、悔い改めたり。
886デフォルトの名無しさん:2009/06/26(金) 01:20:36
JavaScriptじゃないけど、ExcelとAccessは2桁の年を入力されると
 00   ... AD2000
 01-20 ... H1〜H20
 21-64 ... S21〜S64/H1
 65-99 ... AD1965〜AD1999
と解釈するという、大きなお世話がある。
887デフォルトの名無しさん:2009/06/26(金) 03:24:40
どっちが標準なのかと調べてみたら、Date.prototype.getYearが存在してなくて驚いた
ttp://www2u.biglobe.ne.jp/~oz-07ams/prog/ecma262r3/15-9_Date_Objects.html#section-15.9.5

こっちで発見
ttp://www2u.biglobe.ne.jp/~oz-07ams/prog/ecma262r3/B_Compatibility.html#section-B.2.4
2000年問題と表現されてるあたり、当初の定義が「西暦の下二桁を返す」だったんだろうな
西暦をそのまま返すっていうのもやむを得ない気はする

ともかくgetYearは金輪際忘れろって事で
888デフォルトの名無しさん:2009/06/26(金) 21:16:51
二千年問題を思い出しました
889デフォルトの名無しさん:2009/07/07(火) 01:54:57
ちょっと質問させてくれ

ブラウザ右上の×ボタンを押下時の処理なんだけど
Window.openで開いた画面で「閉じても宜しいですか?」的なメッセージを
ダイアログで表示させたいんだが・・・

function window.onbeforeunload() {
if((event.clientX > document.body.clientWidth) && (event.clientY < 0)) {
   return '';
 }
}

以外でいいのないですかね?
このダイアログはメッセージがセンスなさ杉て使えないですよね。

ブラウザはIE限定です。
890デフォルトの名無しさん:2009/07/07(火) 02:54:00
偉そうな質問者だなw
891デフォルトの名無しさん:2009/07/07(火) 09:35:27
解答者も時間を割いて返答する点を
考慮すれば、友達口調にはならんよなぁ
変なプライドがあるなら自分で参考文献から答えを探せよって思うね
答える方は義務でも使命でもない
質問者が困ろうと知ったこったねぇよ ってのが本音だし
892デフォルトの名無しさん:2009/07/07(火) 11:05:13
ページを閉じるかどうかの制御をサイトがすべきではない。黙って死ね。
893デフォルトの名無しさん:2009/07/07(火) 11:57:23
スクリプトが開いたウィンドウなら、ダイアログが出ずに閉じるんだっけ。
894デフォルトの名無しさん:2009/07/07(火) 12:10:03
>>892
そう決め付けれるもんでもないと思うが。
895デフォルトの名無しさん:2009/07/07(火) 19:28:21
勝手にウィンドウをリサイズされるのも苛つく
どうせ一瞬出元に戻されるんだから無駄な抵抗なのに…
896デフォルトの名無しさん:2009/07/07(火) 21:31:12
firefoxはウィンドウのリサイズを禁止できるけど、他のブラウザはできないの?
897デフォルトの名無しさん:2009/07/08(水) 01:02:58
禁止できるというかディフォルトで禁止で、
ノーティフィケーション・メッセージでどうする?
って確認されるでしょ?
俺はさらにそれを「新しいタブで開く」にしてる。
リサイズはもちろん禁止。
898デフォルトの名無しさん:2009/07/08(水) 08:35:22
商用じゃなきゃ好きにやれよ
とか思うけどな、好き勝手やって学べばいい
禁則がなんで禁則なのかも学べるからな
899デフォルトの名無しさん:2009/07/13(月) 02:32:49
FC2の共有プラグインを使おうとしているのですが、よく判らないscriptタグが仕込まれていました。
一応マの端くれではあるので適当に改行を入れてみたのですが、いかんせんjavascriptは門外漢なので何をしているのかよく判りません。
以下のコードなんですが、どんなことをしているか良かったら教えて頂けないでしょうか?
尚、最後の()内は元は改行なしなんですが、そのまま書き込もうとしたら怒られたので改行入れてます。

<script type="text/javascript">
function
(
"a",
'for
(var c=new object(),c,i=0,j,k,l,m,p,s=" ",w;i<63;i++)
c["0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz_".charat(i)]=i;
while(i-=7)
s+=s;
while((c=c[a.charat(i++)])<63)
if(c<32) s+=string.fromcharcode(m?l*32+c:(l*32+c)*62+c[a.charat(i++)]);
else if(c<49) {l=(c<36)?c-32:(c<44)?c+348:c+1996;m=1}
else if(c<50) {l=c[a.charat(i++)];m=0}
else
{
if
(p=(w=s.slice(-819)).substring(k=(c-50)*63+c[a.charat(i++)],j=k+c[a.charat(i++)]+2))
while(w.length<j)
w+=p;
s+=w.substring(k,j)
}
document.write(s.slice(1024))'
)
("xsyezf2ixuwaxsz49mx0zjkpc5xt2zd1i79exdzkfgxqlzgoxrz6fekxdzj9q5xqhg_m1zk5okxdz1c97ex
qz35ek5ixrz213b7ifle4xdz3fcfixq3z3__3xr2zc1z1x0z8i56xt2z8kkgxqffzn_w04i1ebxez2_m07xogez6
3xiez3fdxf20zkz815kxt2yv_b0_v1_40xsy6fekx0zj3_g03m__3zj2y6yk1x0yjyk1_f0xh_p1ylxu8y3x90ne37nhimsmnih0nagoxsfyl_l0xf_82_u8z1_x1xx1_71_udx54")
</script>
900デフォルトの名無しさん:2009/07/13(月) 04:06:03
>>899
意味もわからず改行いれちゃう時点でマじゃない。
端くれですらない。
901デフォルトの名無しさん:2009/07/13(月) 04:12:08
>>899
何がしたいのかわかんね
902デフォルトの名無しさん:2009/07/13(月) 09:48:18
charatなんてあったっけ?
903デフォルトの名無しさん:2009/07/13(月) 11:16:59
charAtならある、つーかこれdowncaseされてない?
節々でおかしい
904デフォルトの名無しさん:2009/07/13(月) 11:43:41
functionじゃなくてFunctionだし。定義じゃなくて呼び出し。
905デフォルトの名無しさん:2009/07/13(月) 11:59:24
後ろにある暗号みたいな奴を、デコードしてdocument.writeしてるね。
ところどころ、コピペミスしているみたいだが。
906899:2009/07/13(月) 18:40:55
>>900-905
すみません。
プラグイン本体のタグが大文字混じりだったんで、全体を小文字に変えていたのを忘れてました。
これじゃ端くれですらないと言われても仕方ありませんね…

素人が任意の位置で改行入れない方が良いみたいなので、
タグ以外を100バイトごとに改行入れてみると以下のようになりました。

このよく判らない暗号文をデコードするとどんなものが現れるのか気になります。
このscriptrタグの部分だけわざわざコメントで<!--変更不可部分-->とまで書いてるので、
何か仕込もうとしていないか?と勘繰ってしまっています……

お手数ですが、もう少しご助力頂けないでしょうか?m(_ _)m

<script type="text/javascript">
Function("a",'for(var C=new Object(),c,i=0,j,k,l,m,p,s=" ",w;i<63;i++)C["0123456789ABCDEFGHIJKLMN
OPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_".charAt(i)]=i;while(i-=7)s+=s;while((c=C[a.charAt(i++)])<63)
if(c<32)s+=String.fromCharCode(m?l*32+c:(l*32+c)*62+C[a.charAt(i++)]);else if(c<49){l=(c<36)?c-32:(c
<44)?c+348:c+1996;m=1}else if(c<50){l=C[a.charAt(i++)];m=0}else{if(p=(w=s.slice(-819)).substring(k=(
c-50)*63+C[a.charAt(i++)],j=k+C[a.charAt(i++)]+2))while(w.length<j)w+=p;s+=w.substring(k,j)}document
.write(s.slice(1024))')("XSYEZF2IXUWAXSZ49MX0ZJKPC5XT2ZD1I79EXDZKFGXQLZGOXRZ6FEKXDZJ9Q5XQHG_m1ZK5OKX
DZ1C97EXQZ35EK5IXRZ213B7IFLE4XDZ3FCFIXQ3Z3__3XR2zc1Z1X0Z8I56XT2Z8KKGXQFFZN_W04I1EBXEZ2_M07XOGEZ63XIE
Z3FDXF20ZKz815KXT2YV_b0_V1_40XSY6FEKX0zj3_g03M__3zj2Y6yk1X0YJyk1_f0XH_P1YLXU8Y3X90nE37nHImSMnIH0nAGO
XSFYL_l0XF_82_u8Z1_x1xX1_71_uDx54")
</script>
907デフォルトの名無しさん:2009/07/13(月) 18:50:57
やっぱりデータ列も狂ってたか、実行しても無理なわけだ
もうめんどくさいからdocument.writeをalertにでも変えて自分でやって
908デフォルトの名無しさん:2009/07/13(月) 18:53:42
データ以前に変数に大文字と小文字のcがある/(^o^)\
909デフォルトの名無しさん:2009/07/13(月) 19:08:20
sの空白が一つになってるせいで結局>>906でもうまくいかないな。
>>907の言うとおりdocument.writeをalertに変えて見ればわけるけど、
<nobr>と<div>で囲まれたリンクとサイトタイトルが出てくるよ。
ランキングの一番下に名前出す用だね。
910デフォルトの名無しさん:2009/07/13(月) 19:23:28
>>907-909
素早いお返事ありがとうございます。
謎が解けてスッキリしました。

ちなみにs=" "の部分は半角スペース4つでした。

本当にありがとうございました。
911デフォルトの名無しさん:2009/07/14(火) 07:41:56
あの2chに指定した時間に投稿できるのもjavascriptでつくれるんですか?

04:44:44:44ぴったりに投稿できるようなの
912デフォルトの名無しさん:2009/07/14(火) 11:01:42
あなたのローカルマシンの時刻で、指定の時刻に投稿を試みることは可能

それでぴったりの投稿日時が反映されると考えているなら
もう少し勉強して、出直してきてください
913デフォルトの名無しさん:2009/07/14(火) 12:07:59
>>912
一度書込んでズレを補正して再度書込めばいいジャン 簡単簡単
914デフォルトの名無しさん:2009/07/14(火) 12:16:44
アホだなー、サーバーの負荷状況で幾らでもズレるだろうに
915デフォルトの名無しさん:2009/07/14(火) 12:36:02
やっぱりいつでもぴったりなのは無理かー

ありがとうございました
916デフォルトの名無しさん:2009/07/14(火) 15:51:19
>>906
ちょっと遅くなってすまんが。
このコードに見覚えがあったので。
ttp://nurucom-archives.hp.infoseek.co.jp/digital/Alphameric-HTML.html
917899=906:2009/07/14(火) 21:25:12
>>916
わざわざありがとうございます。

この使おうとしていたプラグイン、
brタグすら大文字小文字不統一でちょっとどうなの?と思いつつ
でもこんな長大なスクリプト書けるのは大したもんだと感心してたんですが、
それすら流用だったってことですね。

元々大したことをしてくれるプラグインでもないので、
自分でタグとCSS書いて実装することにしました。
「変なものを仕込もうとしてる」ように見える箇所があった時点で
かなり使う気は減退していましたので。

ご助力、ご助言いただいた方、お叱り頂いた方も含め
皆様、ありがとうございました。
918デフォルトの名無しさん:2009/07/17(金) 03:46:34
あーん、もうウンコ出しちゃうわよ
919デフォルトの名無しさん:2009/07/19(日) 00:56:00

アホだなー、サーバーの負荷状況で幾らでもズレるだろうに 0:56:0

920デフォルトの名無しさん:2009/07/19(日) 01:00:00

アホだなー、サーバーの負荷状況で幾らでもズレるだろうに 1:0:0

921デフォルトの名無しさん:2009/07/19(日) 01:04:00

アホだなー、サーバーの負荷状況で幾らでもズレるだろうに 1:4:0

922デフォルトの名無しさん:2009/07/19(日) 01:05:05
ずれるまでやるのかい
923デフォルトの名無しさん:2009/07/19(日) 01:05:59
ボタンを押すとinnerHTMLで文字列としてhtmlタグを書いてテーブルを追加したいです。
テーブルを追加する位置は常に先頭で前に表示したものは下にスライドしていくイメージです。
助けてください。お願いします。
924デフォルトの名無しさん:2009/07/19(日) 09:18:20
tableに行を追加して、そこに更にセルを追加するだけ。
情報は転がってる。
925デフォルトの名無しさん:2009/07/19(日) 20:07:32
XMLを元に、データをdivに区切って出力しています。
区切ったdivに連番のIDを付け、他のページからアンカーを
使ってアクセス出来るようにしたのですが、
IEでは上手く行くのですがfirefoxではページ最上段が表示されてしまい、
上手くいきません。
firefoxではjavascriptで生成されたdivへアンカーを付けることは
出来ないんでしょうか?
何かいい方法はないんでしょうか。
926デフォルトの名無しさん:2009/07/19(日) 20:22:05
アンカーでIDとした文字列は、許容された物?
全角文字を使うと、UA依存になる。
927925:2009/07/19(日) 20:29:51
文字列は半角で0、1、2・・・
のように付けています。
数字だけのIDは許容されないのかと思い、
item0、item1、item3・・・
のようにもしてみましたが、こちらもダメでした。
928925:2009/07/19(日) 20:41:53
解決しました。
window.onloadでデータの読み込み、表示をした後に
document.location = location.href;
を追加することで上手く動作出来ました。
929デフォルトの名無しさん:2009/08/04(火) 16:41:28
javascriptを使えば、掲示板で書き込み時以外は静的htmlで
書き込みの時だけcgiを呼ぶようなことできますか
930デフォルトの名無しさん:2009/08/04(火) 17:15:49
使わなくてもできる
931デフォルトの名無しさん:2009/08/04(火) 17:32:27
CGIが書き換えるHTMLを静的と言わないならJS使わないと無理
932デフォルトの名無しさん:2009/08/05(水) 00:20:48
<html>
<head>
<script>
function magic() {
kensaku = new RegExp(form.mae.value,"g") ;
okikae = form.ato.value;
taisyou = form.mae.value;
form.bunsyou.value = taisyou.replace(kensaku,okikae);
}
</script>
</head>
<body>
<form id ="form">
検索する文字列 <input type="text" name="mae"><br />
置き換える文字列 <input type="text" name="ato"><br />
<BUTTON onClick="magic()">作業開始</BUTTON>
<p><TEXTAREA name="bunsyou" cols="80" rows="5"></TEXTAREA>
</form>
</body>
</html>

たとえば、テキストエリアに日本人と入力して、
検索する文字列に日本、置き換える文字列に宇宙と入力すれば、
テキストエリアは宇宙人となるはずなんですが、どういうわけか宇宙と表示されてしまいます。
どこがおかしいですか?
933デフォルトの名無しさん:2009/08/05(水) 00:48:29
> テキストエリアは宇宙人となるはず

この想定がおかしい。上のコードのどこをどう読んだらそうなるんだ?
934デフォルトの名無しさん:2009/08/05(水) 00:58:56
>>933
じゃあ、テキストが間違ってるのかな?
935デフォルトの名無しさん:2009/08/05(水) 01:03:27
>taisyou = form.mae.value;
ここは
taisyou = form.bunsyou.value;
じゃないの?
936デフォルトの名無しさん:2009/08/05(水) 01:31:00
>>935
どうもありがとう。
937デフォルトの名無しさん:2009/08/05(水) 11:45:28
<html><head><script>
pages = new Array( ) ;
pages[1]='1page' ;
pages[2]='2page' ;
pages[3]='3page' ;
var page;
function book (mode) {
if (mode=="f") {
page=1;
}
else if (mode=="b") {
page--;
if (page<=0) { page++; }
}
else if (mode=="n") {
page++;
if (pages.length <= page ) { page--; }
}
else {
page= (pages.length-1);
}
nunn.innerHTML=page + "/" + (pages.length-1) ;
hons.innerHTML=pages[page];
}
</script></head><body onload = " book ( 'f ')">
<BUTTON onclick = " book(' f ') "> << </BUTTON>
<BUTTON onclick = " book(' b ') "> < </BUTTON>
<BUTTON onclick = " book(' n ') "> > </BUTTON>
<BUTTON onclick = " book( 'l ') "> >> </BUTTON>
<p><b><span id="nunn">現在のページ番号/総ページ数</span></b><br />
<span id="hons">ページの本文</span></p>
</body></html>
938937:2009/08/05(水) 11:46:43
どのボタンをクリックしても、

3/3
3page

としか表示されないのですが・・
939デフォルトの名無しさん:2009/08/05(水) 11:52:36
空白の数とか、大文字と小文字の使い分けとか細かいことに気がまわらないやつは
プログラムをやめたほうがいい。
板違いに気づかないやつも。
940デフォルトの名無しさん:2009/08/05(水) 12:01:11
fの前後に半角スペース
941937:2009/08/05(水) 12:27:33
>>939-940
治りました。
どうもありがとう。
942デフォルトの名無しさん:2009/08/05(水) 15:29:59
どういたしまして(ヽ'ω`)
943デフォルトの名無しさん:2009/08/17(月) 23:20:10
すみません質問させてください。
swfファイルを貼付けるときに
<object id="obj_id">
<embeded id="emb_id" />
</object>

このようにidを設定してやり
swfファイルがクリックされたときにJSの処理を実行したいのですが
IEの場合だけうまく動きません。

ちなみに,safariとFirefoxでは下記のようにしてやることでうまく実行できました。
function clickHandler(){
alert("click test");
}
docment.getElementById("obj_id")addEventListener("click", clickHandler, false); //safariで動作
docment.getElementById("emb_id")addEventListener("click", clickHandler, false); //firefoxで動作

しかし、IEではaddEventListenerが使えないとの事だったので
document.getElementById("obj_id").attachEvent("onclick", clickHandler);
と設定するようにしました。
(emb_idはelementが取得できなくてエラーになってたので利用しませんでした。)
しかし、このようにしてもhtml上のswfファイルをクリックしたときに
clickHandlerに仕込んだalert処理が動かなかったのです。

これは自分のIEでのイベント処理の記述の仕方が悪いのでしょうか?
それともIEの仕様ではFlashPlayerが実行しているswfファイルに対するクリックイベントを取得できないのでしょうか?
誰か詳しい方いたらよろしくお願いいたします。



944デフォルトの名無しさん:2009/08/19(水) 11:51:57
すみません質問なのですが、例えば
<font size="-1">hogehoge</font>
というふにfontではさまれたhogehogeをjavascriptで取得したいのですが可能でしょうか?

fontのxpathの位置は分かっていて、このように取得しています.
var resFont = document.evaluate('/html/body/table/tbody/tr/td/font',
         document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null );
945944:2009/08/19(水) 12:20:33
自己解決しました
どうやらinnerTextはfirefoxで使えないので
textContentを使ったらできました
946デフォルトの名無しさん:2009/08/20(木) 23:15:18
window.alert()としてみる
947デフォルトの名無しさん:2009/08/23(日) 19:34:42
オープンソース:急成長のJavaScriptなど動的言語が人気
http://sourceforge.jp/magazine/09/08/13/0423202
948デフォルトの名無しさん:2009/08/23(日) 23:19:52
画面上のマウス座標を取得する際、
disabledで無効化しているinputボタンのところだけ
うまく取れないんですが、いい方法ありませんか?
949デフォルトの名無しさん:2009/08/24(月) 09:27:12
>>947
C#とかRubyて人口少ないなぁ
950質問  ◆jlXQwsYhgY :2009/08/24(月) 14:03:05
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ラジオボタンの選択項目の取得</title>
</head>
<body>
<form name="color">
<input type="radio" name="iro" value="red">赤
<input type="radio" name="iro" value="blue">青
<input type="button" value="色を表示" onclick="display()">
</form>
<script type="text/javascript">
function display(){
for(var i=0;i<document.color.iro.length; i++){
if(document.color.iro[i].checked){
alert(document.color.iro[i].value);
return;
}
}
alert('選択されていません');
}
</script>
</body>
</html>
951質問  ◆jlXQwsYhgY :2009/08/24(月) 14:04:39
たとえば、赤を選んで、「色を表示」ボタンをクリックしたら、
背景も赤くなるようにしたいのですが、どうしたらいいですか?
952デフォルトの名無しさん:2009/08/24(月) 14:11:56


<body>
<h1>背景色の変更</h1>
<button onClick = "document.bgColor = 'red' " >赤 </button>
<button onClick = "document.bgColor = 'blue' " >青 </button>
</body>

じゃダメ?
953デフォルトの名無しさん:2009/08/24(月) 17:35:02
>>952
ボタンを押したタイミングがいいってことじゃね?

>>951
こういうのとか。引数でform渡した方が使い道ありそうな気もするけど。
function display(){
  var radio = document.color.iro;
  for (var i=0,l=radio.length; i<l; ++i) {
    if (radio[i].checked) {
      return document.body.style.backgroundColor = radio[i].value;
    }
  }
  alert('選択されていません');
}
954デフォルトの名無しさん:2009/08/24(月) 22:43:50
こういうコード見るとdocumentだけDに代入したくなるんだけどこれってキモい?
955デフォルトの名無しさん:2009/08/24(月) 23:08:39
キモくはないよ。
アリだと思う。
956デフォルトの名無しさん:2009/08/24(月) 23:41:08
953さんのコードで言うと
var radio = (D=document).color.iro;
とかやっちゃうんだけど、アリかあ。良かった。
957デフォルトの名無しさん:2009/08/24(月) 23:57:31
>>956
グローバル変数作っちゃうのは気持ち悪い
958デフォルトの名無しさん:2009/08/25(火) 03:48:42
with
959デフォルトの名無しさん:2009/08/25(火) 04:45:55
javascriptで複数のHTMLのクラス属性の内容を一気に書き換える方法でオススメの方法はありますか?
JSフレームワーク等を使ってもかまいません、というかどちらかというと希望します。
可能ならばクラス change を利用して、簡潔に書き換える方法を知りたいと思っています。
しかし、クラスを指定してid一覧を得るような方法も分からないですし、それでもいいと思ってます。

<div id="one" class="change">いち</div>
<div id="two" class="change">にぃ</div>
<div id="three" class="change">さん</div>
<div id="four" class="change">よん</div>
960デフォルトの名無しさん:2009/08/25(火) 11:09:41
>>959
日本語難しいよ。同じclassの中身を変えればいいの?
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript">
$(function(){
  $('div.change').each(function(i, elem){
    var $elem = $(elem);
    $elem.text(i + " : " + $elem.attr('id'));
  });
});
</script>
961959:2009/08/25(火) 14:29:00
>>960
分かりにくい説明ですいません。
回答して下さった内容で大丈夫だと思います。
ありがとうございます。

ちょっと解読しつつ活用してみます。
962デフォルトの名無しさん:2009/08/25(火) 15:29:49
ここで解答してる人って,頭良いのにどうして働かない?
963デフォルトの名無しさん:2009/08/25(火) 15:47:46
仕事ができるので、
仕事中の2ちゃんねるも大目に見られてる。
964デフォルトの名無しさん:2009/08/25(火) 23:16:15
俺は裁量労働制だから、週の半分ぐらいは自宅作業。
でも、出社したほうが集中できるのは確かだな。
965デフォルトの名無しさん:2009/08/25(火) 23:26:43
俺は昼遅くくらいから週5で常駐してる
家にいたら嫁に雑用頼まれて邪魔されるから仕事にならん
たまたま休憩がてら2ch見てた所をのぞき込んで仕事してない駄目親父ニート扱いしやがるし
966デフォルトの名無しさん:2009/08/27(木) 09:57:33
DOMって覚えなきゃダメ?
967デフォルトの名無しさん:2009/08/27(木) 12:21:32
覚えてる奴なんていないよ。
968デフォルトの名無しさん:2009/08/27(木) 13:07:51
調べ方を覚えないと駄目。
969デフォルトの名無しさん:2009/08/27(木) 16:16:07
>>967-968
安心したw
今、「独習JavaScript」て本で勉強してるんだけど、詳しすぎるw
970デフォルトの名無しさん:2009/08/28(金) 02:09:48
「DOMを覚える」がどういうことかわからんが、DOM操作の基本は知っておいたほうがいいな。
971デフォルトの名無しさん:2009/09/01(火) 09:52:03
3台並べてジェットストリームアタックかます
972教えてください ◆lo0Ni729yM :2009/09/01(火) 10:11:03
<html>
<head>
<title>rei4-1.html</title>
<script type="text/javascript">
function img_change1() { document.images["annai"].src="annai-1.gif"; }
function img_change2() { document.images["annai"].src="annai-2.gif"; }
</script>
</head>
<body>
<a href="annai.htm" onMouseOver="img_change2()" onMouseOut="img_change1()">
<img src ="annai-1.gif" border="0" namae="annai"></a>
</body>
</html>
973教えてください ◆lo0Ni729yM :2009/09/01(火) 10:13:44
>>972
namaeに"annai"なのだから、a href="annai.htm"ではなくて、a href="annai"ではないのか?
と思って、やってみましたが、どちらにしてもロールオーバーしません。
他に原因があるのでしょうか?
974デフォルトの名無しさん:2009/09/01(火) 10:28:24
nameをnamaeに翻訳すんなw
975教えてください ◆lo0Ni729yM :2009/09/01(火) 10:33:34
>>974
できました。どうもありがとうございます。
あと、インターネットで見つけたのですが、

<html>
<head>
<title>rei4-1html</title>
<script type="text/JavaScript">
<!--
var pic = new Array();
pic[0] = new Image();
pic[1] = new Image();
pic[0].src = "annai-1.gif";
pic[1].src = "annai-2.gif";
function setRollOverImg(index, obj){
obj.src = pic[index].src;
}
//-->
</script>
</head>
<body>
<img src="annai-1.gif" onMouseOver="setRollOverImg(0, this)" onMouseOut="setRollOverImg(1, this)">
</body>
</html>

と、どちらが良いプログラムなのでしょうか?
976デフォルトの名無しさん:2009/09/01(火) 11:02:19
どちらも微妙、CSS使え
977デフォルトの名無しさん:2009/09/01(火) 21:54:58
JavaScriptは一番簡単かつ自由にプログラムを上級者なら書けるが
初級者がこれを上級者になる為の訓練として使っても目的を
達することは期待できないだろう。これはスクリプト言語全般に
言えるのでは。
978デフォルトの名無しさん:2009/09/01(火) 22:59:02
>>977
JavaScrpt をどんな言語に置き換えても成り立つし、スクリプト言語
じゃなくても同じことが言えるだろ?
JavaScript は C の皮かぶった lisp って話も聞くけど、lisp は
伝統的にはコンパイラベースの言語だしな…
979デフォルトの名無しさん:2009/09/02(水) 01:20:19
>>978
lisp は マッカーシーの時代から動的スコープを持つわけだが
980デフォルトの名無しさん:2009/09/02(水) 08:42:54
>>978
> JavaScript は C の皮かぶった lisp って話も聞くけど、

LISPじゃなくて、Schemeの間違いでしょ。
もともと、Brendan Eichはブラウザ上でSchemeを動かすために、
Netscapeに雇われたんだよ。
http://weblogs.mozillazine.org/roadmap/archives/2008/04/popularity.html#more
結局、Cの皮をかぶるプロトライプ言語になったけども。

>>979
最初はインタープリタだけだよな。
981デフォルトの名無しさん:2009/09/02(水) 17:36:18
どうにも困っとります。(´・ω・`)

Javascriptで10桁×10桁の演算せんといかんくなったですが、32bitに収まらない事に気付いた...
20桁扱う整数演算ってJavaScriptでどうやりゃ良いんでしょうか?orz
982デフォルトの名無しさん:2009/09/02(水) 17:39:25
10桁ずつ計算すりゃいいんじゃね
983デフォルトの名無しさん:2009/09/02(水) 17:42:23
あ〜...やっぱ自分で作らにゃ無いんですね。(´・ω・`)

32bitに収まるようにっつぅことは...4桁ずつに区切って計算して...って事ですね...?
984デフォルトの名無しさん:2009/09/02(水) 18:01:59
整数8桁かける整数8桁なら、浮動小数点数で計算しても、誤差は発生しないんだけどね。
985デフォルトの名無しさん:2009/09/02(水) 18:09:19
そういや、実数部分は32bitじゃなかったんですよね。
忘れてました...orz

とりあえず、自力で作ってみます。

ヒントだけでもいただけて助かりました。(*´ω`)
986デフォルトの名無しさん:2009/09/02(水) 18:15:06
「JavaScript bigint」でググると幸せになれるかも。

987デフォルトの名無しさん:2009/09/02(水) 18:16:44
ttp://deztec.jp/x/05/faireal/25-index.html#d20530
斜め読みしかしてないけどそれっぽいライブラリがあった
988デフォルトの名無しさん:2009/09/02(水) 18:22:12
bigintも調べたらhitしたんですが、ライブラリのdownloadができなくて、あきらめたんです。(´・ω・`)
989デフォルトの名無しさん:2009/09/02(水) 18:29:33
990デフォルトの名無しさん:2009/09/02(水) 18:31:39
こんなのもあるみたい。
BigDecimal support for JavaScript
ttp://stz-ida.de/html/oss/js_bigdecimal.html.en
991デフォルトの名無しさん:2009/09/02(水) 18:47:36
>>989
あれ?ありがとうございます。
探し方が下手だっただけみたいですね...orz

>>990
ありがとうございます。
こちらも参考にさせていただきます。

ホントに有益な情報ありがとうございます。
992デフォルトの名無しさん:2009/09/02(水) 20:54:13
質問です。
<textarea>にXMLを入力して、それをサーバに送らずに
JavaScriptでDOMでアクセスしたり、DOMで作ったXMLを
<textarea>に書き出したりしたいのですけど、
できますでしょうか。
993デフォルトの名無しさん:2009/09/02(水) 21:05:39
できるよ。
994暇つぶし:2009/09/03(木) 03:57:38
>>76
一番簡単なの
if 金曜日{
if day>14}
echo$unko;
}}else{
}
995992:2009/09/04(金) 00:54:05
>>993
なるほど、ありがとうございます。
ついでに、やり方もさくっと教えて頂ければ、なお嬉しい。
996デフォルトの名無しさん:2009/09/04(金) 05:07:24
KIAI
997デフォルトの名無しさん:2009/09/04(金) 09:31:46
998デフォルトの名無しさん:2009/09/04(金) 09:41:07
>>995
余白が足りない。
次スレまで待て。
999デフォルトの名無しさん:2009/09/04(金) 14:50:10
>>992
そもそもブラウザ上のJavaScriptはWeb製作板の質問スレへ。
1000デフォルトの名無しさん:2009/09/04(金) 14:52:34
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。