08/07/16 23:35:27 URkzV39N
二つほど質問があるのですが、
①prototype.jsの$機能を書きたい場合下でいいですか?
var $ = document.all;
②データバインドで、ア行のFilter やカ行のFilterをしたい場合はどのようにすればよろしいでしょうか?
856:Name_Not_Found
08/07/17 12:03:13
>>855
マル数字やめてくんないかな。機種依存文字だしここWeb制作板だし。
オブジェクトからメソッドだけ取り出して変数に入れても無理でしょ。
さらにdocument.allはブラウザ依存だから
function $(id) { return document.getElementById(id); }
がいいんではないの。データバインドは知らん。
857:Name_Not_Found
08/07/17 21:47:38 wCPlHGWS
フレームから新しいフレームをOpenして、フレーム枠の一つを別のページにしようとしています。
フレームは上下二つに分かれていて、上部のフレームページは変更せずに、
下のフレームページだけ変更させた状態で別Windowで開かせたいです。
スクリプトはメインページ1に記載していて、以下のような感じです。
function jump(x1, x2) {
var newfrm=null;
newfrm=window.open(x1,"new");
newfrm.frames[1].location.href=x2;
// newfrm.document.getElementById("mainFrame").src=x2;
}
IEだと正しく動作するのですが、FireFox3では新しいウインドウは開くもののメインページが変更されません。
サンプルページ URLリンク(check.chew.jp)
windowオブジェクトが正しく取得できていないようです。
コレに対し、window.openの後に意味のないalertを入れるとなぜか動作します。
サンプルページ URLリンク(check.chew.jp)
alertいれずに動作をさせる方法、もしくは別の書き方で同様の処理ができる方法を押してください。
ただし、メインページ2側にスクリプトを埋める事はできません。
よろしくお願いします。
858:857
08/07/17 21:49:09
すみません。
「押してください。」じゃなく「教えてください。」です。
よろしくお願いします。
859:Name_Not_Found
08/07/17 23:16:55
質問です
Align←これなんて読むんですか?
860:Name_Not_Found
08/07/17 23:20:06
>>859
アリグン(嘘)。英語の辞書を引けば発音記号が載っているぞ。
いや、きょうび発音も聞けるぞ。
>>857
だからさ、window.open()した直後にもうフレーム定義が読まれて
いると思う方がヘンでしょ。setTimeout()を使って少しだけ遅れて
フレーム内参照を行うように直すべきだと思うな。
861:Name_Not_Found
08/07/17 23:37:46
innerHTMLでJavaScriptを書き出した場合(<img src="" onclick="alert('')" />など)
外部スクリプトの場合実行されないのですが、どのようにすれば実行するのでしょうか?
862:861
08/07/17 23:41:06
と思ったら、実行されてますたorzサーセン
863:857
08/07/17 23:45:26
>>860
うっ、そうなのか…。
レスありがとう。明日試して報告します。
864:Name_Not_Found
08/07/17 23:52:36 HCLYt3vn
<TR onclick="myFunc(1)">
となっているところを
<TR onclick="myFunc(2)">
という風に引数を変更したいのですがどうやればいいのでしょうか?
↓のやり方で出来たので、同様の書き方でやってみたのですがダメでした。
○element.onclick = new Function("alert('alert_test')");
×element.onclick = new Function("myFunc('2')");
他には以下を試しましたが、全て上手くいきませんでした。
element.onclick = myFunc(2);
element.onclick = "myFunc(2)";
element.onclick = eval("myFunc(2)");
element.onclick = function anonymous(){myFunc(2);};
element.onclick = new Function("myFunc(2)");
865:Name_Not_Found
08/07/18 00:09:56
そのelementってただ書いただけなのか
それともあらかじめ要素を代入しているオブジェクトなのか
866:Name_Not_Found
08/07/18 00:14:23
element.onclick = new Function("myFunc('2')");
element.onclick = function anonymous(){myFunc(2);};
これらは普通は動くはずだから再現するソース出して
867:864
08/07/18 01:27:49 QWTSjMbX
>>865
elementにはTRの要素が入っています。
>>866
コードを抜き出して単体でテストしたところ上手くいきました。それで確認したところ、違うフレームに対して行うとダメなようです。
○frame.html
<FRAMESET cols="50%,*"> <FRAME src="test1.html" name="frame1">
<FRAME src="test2.html" name="frame2"></FRAMESET>
○test1.html
<SCRIPT LANGUAGE="JavaScript">
function myFunc1(str){
alert(str);
}
</SCRIPT>
<TABLE><TR onclick="myFunc1('foo')"><TD>myFunc1</TD></TR></TABLE>
○test2.html
<SCRIPT LANGUAGE="JavaScript">
function myFunc2(){
alert(top.frame1.document.getElementsByTagName('TR')[0].onclick);
top.frame1.document.getElementsByTagName('TR')[0].onclick = new
Function("myFunc1('bar')");
alert(top.frame1.document.getElementsByTagName('TR')[0].onclick);
}
</SCRIPT>
<TABLE><TR onclick="myFunc2()"><TD>myFunc2</TD></TR></TABLE>
frame1にある関数の引数をframe2から変更するにはどうしたらいいのでしょうか?
868:Name_Not_Found
08/07/18 02:52:11
Firefox3,Greasemonkeyですが、
view = function(o){
for(p in o){ alert(p) }
}
view({foo:1,bar:2});
とするとfoo,barとアラート出ます。しかし、
view = function(o){
for(p in o){ alert(p) }
}
view(document);
とするとアラートが出ません。
documentオブジェクト内のproperty,valueを走査したいのですが、どうしたらいいですか?
869:Name_Not_Found
08/07/18 04:31:19
ページで選択されている部分のソースの何文字目か取得する方法はありませんか?
-----------------
<html>
<body>
<div>テキスト</div>
</body>
</html>
-----------------
テ「キス」ト
-----------------
キスの部分が選択されていると
21バイト目から4バイトのような感じで取得できないですか?
870:848
08/07/18 05:17:41
一往こんな風に書いてみて、動作していると考えますが、
もっと妥当な書き方有りますか?
var i;
var list = document.getElementsByTagName('img');
for(i=0; i<list.length; i++){
if (list[i].height<=20) {
document.getElementsByTagName('img')[i].style.verticalAlign="middle";
}
}
871:Name_Not_Found
08/07/18 07:58:24
>>870
なんでループの中でもっかいgetElem...を呼ぶのかなー。
list[i].style.verticalAlign = "middle";
でいいと思うんだが。
872:870
08/07/18 08:36:12
>>871
そうだよなぁ、document.list[i] ~でエラーになると思ったら、
document.document になるんだもんね~。納得!!
ありがとうございました。
873:Name_Not_Found
08/07/18 08:49:03
>>867
あのさあ、new Function()はあくまでも右フレームで
やっているわけで、そこで書いているmyFunc1も右フレーム
の関数を参照しようとするでしょ。しかしそれは右フレーム
にはないと。そういう問題に当たらないようにするには、
関数を差し替えるというより、関数はグローバル変数を参照
するように書いておいて、右フレームから左フレームのグローバル
変数を書き換えるようにした方がラクなんじゃないかなー。
別案としては、左フレームに「関数を差し替える関数」を用意
しておいて、右フレームからはその左フレームの関数を呼ぶとか。
874:Name_Not_Found
08/07/18 08:58:19
>>872
残念ながらあなたの理解は間違っている。
var list = document.getElementsByTagName('TR');
を実行したからといって、
document.list
と書いた場合にそれが
document.document.getElementsByTagName('TR')
に展開されるわけではない。エラーはあくまでもdocumentに
listというプロパティがないために起きている。その辺の理解を
曖昧にしたまま先に進まない方がいいと思うよ。
875:Name_Not_Found
08/07/18 09:07:17
>>869
Rangeでごにょごにょやってlocation.hrefにリクエスト投げて
responseTextから検索してみるとか
876:857
08/07/18 10:41:42
>>860
ご指摘どおり下記のように修正したらできました。
-----------------------------------
var newfrm=null;
var chgpage;
function jump(x1, x2) {
newfrm=window.open(x1,"new");
chgpage=x2;
setTimeout("chg()",50);
}
function chg(){
newfrm.frames[1].location.href=chgpage;
}
-----------------------------------
URLリンク(check.chew.jp)
ありがとうございました。
877:868
08/07/18 12:12:38
>>868についてですが、
for(p in document){ alert(p + ':' + document[p])}
とやればちゃんとproperties, valuesが走査できるのはいいんですが、
私がやりたいのは、>>868のようなviewというオブジェクトの中を走査する
関数を作りたいんです。
これにはどのようにしたらいいでしょうか?
878:Name_Not_Found
08/07/18 12:46:38
>>869
document.getSelection();
使えば出来そう
879:Name_Not_Found
08/07/18 17:53:56 UdJKDEnP
糞な仕様なのは重々承知のうえで質問。
ブラウザのツールバーを消したいんですが、
window.openを使わずに実現する方法ありますか?
最悪、IE限定とかでもかまいませんので。
880:Name_Not_Found
08/07/18 18:16:43
>>879
過去スレ全集でvol.17の676-684を読むといいかも。
881:Name_Not_Found
08/07/18 20:57:44
>>877
色々意味不明すぎる。わかり易く質問書き直してくれ。
882:Name_Not_Found
08/07/18 21:37:20
>>881
どんだけ文盲だよ
883:868
08/07/19 02:17:24 S5Cl8gA2
質問の仕方がわかりにくいという指摘があったので、分かりやすく書き直してみました。
【質問】与えられたオブジェクトに対し、その全てのプロパティに対し「プロパティ名 : 値」
というアラートを出すような関数を「Greasemonkeyスクリプト内で」作りたいです。(ただし、プロパティにはメソッドも含む)
試しに、
view = function(o){ for(p in o){alert(p + ': ' + o[p])} }
という関数を作ってみました。
まずこの関数の引数として自分で作ったオブジェクトを与えたところうまく動作しました(下例)。
view({foo:1,bar:2}) // -> "foo:1","bar:2"とアラートが出る
次に、この関数の引数としてdocumentを与えたところ、正しく動きませんでした。
view(document) // -> ページによって出る内容が違う。
例えば、URLリンク(www.google.co.jp)だとアラートが出ません。
URLリンク(www.nicovideo.jp)だと
"_getElementsByXPath: undefined",
"getElementsByClassName: function XPCNativeWrapper function wrapper() {
[native code]
}", "location: URLリンク(www.nicovideo.jp)"
という三つのアラートが出ます。
documentにはbodyというプロパティがあると理解していますが、それが出てこないのが不思議です。
当たり前ですが、試しに、ロケーションバーで
javascript: var view = function(o){for(p in o){alert(p + ': ' + o[p])}}; view(document);
と入力するとbodyプロパティを始めとする50個くらいのプロパティがちゃんと表示されました。
884:Name_Not_Found
08/07/19 02:34:19
>>883
view(document.wrappedJSObject);
とURLリンク(developer.mozilla.org)
をどうぞー
885:Name_Not_Found
08/07/19 04:33:05
>>884 ありがとうございます。そのようにすれば、bodyプロパティなども表示されました。
しかし、新たな問題が浮上しました。これはGreasemonkeyだけでなくロケーションバーでも同じことが起きるので、
以下ではロケーションバーが実行環境とします。
javascript:var view=function(o){var txt='',count=10; for(p in o){if(!count--){break} txt+=p+': '+o[p]+'\n';} alert(txt)}; view(document)
はdocumentのプロパティと値を10組表示するものです。これはちゃんと動きます。しかし、
javascript:var view=function(o){var txt='',count=150; for(p in o){if(!count--){break} txt+=p+': '+o[p]+'\n';} alert(txt)}; view(document)
これはアラートが出ません。
ページによって違うものの、大体147を超えたあたりでアラートが出なくなります。
javascript:var view=function(o){var txt='',count=150; for(p in o){if(!count--){break} txt+=p+': '+o[p]+'<br/>';} document.body.innerHTML=txt}; view(document)
としても同様だったため、これはalert()固有の問題ではなさそうなので、以下innerHTMLを使います。
javascript:var view=function(o){var txt='',count=200; for(p in o){if(!count--){break} txt+=count+'::'+p+"<br/>";} document.body.innerHTML=txt}; view(document)
これは表示されます。ちなみに、ちょうど150行目あたりで終わっています。しかし、
javascript:var view=function(o){var txt='',count=145; for(p in o){if(!count--){break} txt+=count+'::'+o[p]+"<br/>";} document.body.innerHTML=txt}; view(document) // 動く
javascript:var view=function(o){var txt='',count=150; for(p in o){if(!count--){break} txt+=count+'::'+o[p]+"<br/>";} document.body.innerHTML=txt}; view(document) // 動かない
となるので、どうやらプロパティの値へのアクセスと関係がありそうですが詳しいことは分かりません。
これはどうしてでしょうか?そして、どうすればちゃんと動くview関数が作れますか?
886:Name_Not_Found
08/07/19 06:18:14
簡略化するとこうです。
【質問】Firefox3のロケーションバーで
javascript:txt='',ct=140; for(p in document){if(!ct--)break; txt+=document[p]} document.body.innerHTML=txt
は動くのに
javascript:txt='';ct=150; for(p in document){if(!ct--)break; txt+=document[p]} document.body.innerHTML=txt
は動かない(何も表示されない)のはどうしてでしょうか?
887:Name_Not_Found
08/07/19 06:45:24
ちなみに、
javascript:s="abcdefghij",o={}; for(i=0;i<10;i++){for(j=0;j<10;j++){for(k=0;k<10;k++){ o[ s[i]+s[j]+s[k] ] = 100*i+10*j+k }}} txt=''; count=150; for(p in o){txt+=o[p]+' '} document.body.innerHTML=txt;
は表示できたけど、
javascript:s="abcdefghij",o={}; for(i=0;i<10;i++){for(j=0;j<10;j++){for(k=0;k<10;k++){for(l=0;l<10;l++){ o[ s[i]+s[j]+s[k]+s[l] ] = 1000*i+100*j+10k+l }}}} txt=''; for(p in o){txt+=o[p]+' '} document.body.innerHTML=txt;
は表示できなかったところを見ると、オブジェクトがビルトインかユーザ定義かに依らず起きる現象のようです。
(上例では1000個および10000個からなるオブジェクトを作り、その値を表示しようとしている)
また、
javascript:s="abcdefghij",o={}; for(i=0;i<10;i++){for(j=0;j<10;j++){for(k=0;k<10;k++){for(l=0;l<10;l++){ o[ s[i]+s[j]+s[k]+s[l] ] = 1000*i+100*j+10k+l }}}} txt=''; for(p in o){txt+=o[p]+' '} alert(3)
もアラートが出ないところを見るとinnerHTMLの動作に関する問題でもなさそうです。
bookmarkletは2000文字近くまで使えるそうなので、bookmarkletの文字数制限の問題でもなさそうです。
いったい何が原因なのか全く分かりません。
888:885
08/07/19 06:47:03 S5Cl8gA2
訂正
>>887の2行目のcout=150;の部分は余計でした。カットします。
889:885
08/07/19 06:49:28
上記の現象はFirefox3.0.1のセーフモードでも発生したことを附記しておきます。
890:885
08/07/19 06:52:10
連投すみません。訂正します。
>>887の6行目
1000個および10000個からなるオブジェクト→1000個および10000個のプロパティからなるオブジェクト
891:Name_Not_Found
08/07/19 08:43:54
やってみたけど、確かに147個が境界だった
なんなんだろうねぇ
892:Name_Not_Found
08/07/19 09:11:08
>>885
なんで使いにくいブックマークレット限定なの?もっと落ち着いて検証すれ。
[落ち着いて検証.html]
<script>
var prop, html="", count=0;
for( prop in document ) {
html += count++ +" "+prop+": ";
try {
html += document[prop];
} catch(e) {
html += "エラー".fontcolor("red").bold();
}
html += "<br>";
}
document.write( html );
</script>
893:885
08/07/19 11:35:46
>>892 ありがとうございます。検証方法を知りませんでした。例外とエラーの違いもよく分かってません。
document.domConfigはget/setしようとするとエラーになるというのがググって分かりました。
下記がエラーコンソールでdocument.domConfig;と打った結果です。
エラー: uncaught exception: [Exception... "Component returned failure code: 0x80004001
(NS_ERROR_NOT_IMPLEMENTED) [nsIDOM3Document.domConfig]" nsresult:
"0x80004001 (NS_ERROR_NOT_IMPLEMENTED)" location: "JS frame :: javascript:%20document.domConfig
:: <TOP_LEVEL> :: line 1" data: no]
Document Object Model Core
URLリンク(www.w3.org)
mozilla/content/base/src/nsDocument.cpp
URLリンク(lxr.mozilla.org)
ここにDOMConfigurationは未実装の旨書かれています。
for inで全部のプロパティを走査するときはtry{}catch(e){}で回避すればいけそうですね。
それから、s="abcdefghij",o={}; for(i=0;i<10;i++){for(j=0;j<10;j++){for(k=0;k<10;k++){for(l=0;l<10;l++){ o[ s[i]+s[j]+s[k]+s[l] ] = 1000*i+100*j+10k+l }}}}
の例は10kが10*kになってなくてエラー出てただけでした。これは恥ずかしい。
894:Name_Not_Found
08/07/19 15:11:43
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
indexOf("#")、indexOf("?") は、それぞれどういうものなのでしょうか?
また、document.MM_sr、document.MM_p には、それぞれ何のデータが格納されているのでしょうか?
という質問をされたのですが、僕には全くわからず・・・
ぜひ、御助けください。
895:Name_Not_Found
08/07/19 15:23:46
また、3つ目のfunction MMについて
for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
>>この部分(ピンクの色づけ部分)は何のための処理なのか? (再帰的呼び出しまで行っているが、何をしているのか?)
この部分がなくてもx=d.getElementById(n)によって目的が達成されるように思えるが、どこが間違っているか教えてほしい。
if(!x && d.getElementById) x=d.getElementById(n);
return x;
}
>>この関数は、document.MM_pの中から、指定された名前のものを探すかと思っていたが、それで正しいのか?
document.MM_pを変数として使用せずに、x=d.getElementById(n)によって処理していても問題なさそうだが、
そうすると、MM_preloadImages でdocument.MM_pをセットしている理由がわからなくなってしまうので、教えてほしい。
4つ目のfunction MMについては
>> a[i+2]は、img/navon_01.gifでなくて、1を指しているように思える。この関数function MM_swapImageの中でimg/navon_01.gifが使われている部分が見つからないが、
実際はどこかで使わないと機能が達成されないので、どこで使っているかを教えてほしい。
とかすごい細かなことを聞かれたのですが、こんなのってわかるかたいらっしゃいますか?
896:Name_Not_Found
08/07/19 16:20:00
>>894
おそらく君は別のところで>>894に関する何らかの質問をしたが
回答者側に質問の意図をきちんと伝えられなかったことから
逆質問を受けたのだと思うので
質問したところがネット上ならそのURLを提示して欲しい
また、仮にそうであるなら
回答者側は>>894の関数(Dreamweaverが吐く関数らしいね)を
君がつくった関数だと受け取ったために君にコードの意図を聞いていると思うので
それについて君(またはこのスレの人間)が詳細に答えても意味がないように思う
まあこれは推測なので外している可能性が大きくあるけれど
何にしても経緯を説明してもらえると双方にとってよいと思う
言いたくなければわかる範囲で(俺か誰かが)答えるかスルーするかだろう
897:Name_Not_Found
08/07/19 16:38:24
いや別に何も答えてもらわなくても俺的にはスルーだから(w
898:Name_Not_Found
08/07/19 16:55:22
スルーできなかった人が!
899:894
08/07/19 17:57:16
経緯といいますか、WORDでこのままの内容が送られてきて、調べてわかるのであれば調べてあげようかな・・・
と思っています。
900:Name_Not_Found
08/07/19 18:10:35
お前に答えられないんなら変な見栄を張らず
俺にはわからんと伝えるのが誠意だろ
調べるって質問することじゃねーだろ
901:Name_Not_Found
08/07/19 18:28:23
んだ
902:Name_Not_Found
08/07/19 18:33:35
ゆとりとスルーできない欠陥人間の集まりですか?w
903:Name_Not_Found
08/07/19 18:37:50
5.人を利用することしか頭にない ・・・甘え根性でその場を乗り切ろうとする。
904:Name_Not_Found
08/07/19 18:49:18
900越えたのでテンプレ論議あれば今どうぞ。
905:Name_Not_Found
08/07/19 19:00:00
道場訓復活 どうよ。
906:Name_Not_Found
08/07/19 19:25:17
URLリンク(wing2.jp)
URLリンク(web2ch.s31.xrea.com)
この辺そろそろ整理しよう
907:Name_Not_Found
08/07/19 19:34:34
FAQ>>4のA10にcurrentStyleの言及が欲しい。こんな感じで
A10. 取得には document.defaultView.getComputedStyle() を使う必要あり。
IEではelement.currentStyleを使う (elementは要素オブジェクト)
908:Name_Not_Found
08/07/19 23:24:52
このjavascriptコードをメインサイトのhtmlに貼り付けて、data.php
から返ってきた値を表示させたいのですがどうすればいいのでしょうか?
下記のようにして試してみたんですがうまくいきません。
ご教授よろしくお願いいたします。
<script language="JavaScript">
<!--
document.write ("<script type='text/javascript' src='data.php''></script>');
// -->
</script>
---------
data.php
<?php
echo 'document.write("Hello");'
?>
909:Name_Not_Found
08/07/20 00:04:00
>>908
PHP側で header('Content-Type: text/javascript'); とか
910:Name_Not_Found
08/07/20 01:18:40
>>909
ありがとうございます。文字が間違ってたみたいです。
それも、つけさせていただきました。
次は発展させ
<script language="JavaScript">
<!--
document.write ("<script type='text/javascript' src='data.php''></script>');
// -->
</script>
---------
data.php
<?php
$URL="document.write(\"<a href='{$URL}' target='_blank'><img src='http://~.jpg' border='0' /></a>\");"';
echo $URL;
?>
こんな感じにURLを変数に入れてから処理しているんですがどうしてもうまくいきません。何が悪いんでしょうか?
data.phpをひらくとちゃんとdocument.write("<a href='{$URL}' target='_blank'><img src='http://~.jpg' border='0' /></a>");
こう出るんですが、、エスケープの間違いなどでしょうか?
わかる方いましたらお願いします
911:Name_Not_Found
08/07/20 02:49:47
src='data.php''
912:Name_Not_Found
08/07/20 03:11:27
ちょっと手打ちだったので書き込むときに間違ったんですが、文法的には直してありました。
誤解させてすみません。
908のようにしたときはちゃんとhelloと表示されたのですが、PHPの以下の部分だけ変えると構文エラーで何も表示されなくなります。
いろいろ試したんですが何が間違っているのやら
<?php
$URL="document.write(\"<a href='{$URL}' target='_blank'><img src='http://~.jpg' border='0' /></a>\");"';
echo $URL;
?>
別の方法でもいいのでPHPから返ってきた値を表示させる方法を教えてくださると助かります。
PHPには引数を与えて動的にいろんな値が返ってくるようにしたいと思っていますので、引数を与えられるようにお願いします
913:Name_Not_Found
08/07/20 03:23:36
PHPスレでやれ
914:Name_Not_Found
08/07/20 03:24:33
document.write ("<script type='text/javascript' src='data.php''></script>');
ここの部分にphpから返って来た値をそのまま置き換えるとちゃんと表示されます。
呼び出しがわるいんでしょうか、どうかお願いします
915:Name_Not_Found
08/07/20 03:27:29
javascript では " と ' は等価だけど php では違う
916:Name_Not_Found
08/07/20 03:37:31
>>914
>>911で間違いを指摘されてんだからちゃんと反映させろよ。
ついでに言えば「</script>');」ここも間違ってる。
教えてクレクレするだけなら帰れ。
917:Name_Not_Found
08/07/20 08:09:58
URLリンク(homepage3.nifty.com)
これ読み込むと文字が正しくありませんってエラーが出るんだけどどうすればいいでしょうか
918:Name_Not_Found
08/07/20 15:41:45
ある文字列(var c)が英字1文字であることを判定するにはどうすればいいですか?
英字の大文字小文字は区別しません。よろしくお願いいたします。
919:Name_Not_Found
08/07/20 16:05:20
>>918
/^[A-Za-z]$/
920:Name_Not_Found
08/07/20 16:49:05
>>918
/^[a-z]$/i.test(c)
921:Name_Not_Found
08/07/20 16:52:50
>>918
どうもです。
922:Name_Not_Found
08/07/20 18:29:03
ワロタw
923:Name_Not_Found
08/07/20 18:57:42
>>922
沸点低いです。
924:Name_Not_Found
08/07/20 19:12:00
沸点って怒りの基準に使わない?
笑いの場合は別の、ほら、あれだよあれ、あれを使う。
925:Name_Not_Found
08/07/20 19:41:15
笑い袋の緒が切れた
926:Name_Not_Found
08/07/20 19:56:04
笑う過度にはピーポ来たる
927:Name_Not_Found
08/07/20 19:59:00
もお成田かの微笑
928:918
08/07/20 21:00:02
IE8だと918の方が早いもん ちくしょうちくしょう
(FF3では有意な差無し)
929:Name_Not_Found
08/07/20 21:00:40
919だった
これは921のせいだと言わざるを得ない
930:Name_Not_Found
08/07/20 21:52:55
お前は何をいっているんだ
931:Name_Not_Found
08/07/20 23:03:26
触らないほうがいいと思う
932:Name_Not_Found
08/07/20 23:17:13
var start = new Date,c="dog",kaisuu=400000;
for (var i = 0; i < kaisuu; i++) /^[A-Za-z]$/.test(c);
document.write(new Date - start+"<br>");
start = new Date;
for (var i = 0; i < kaisuu; i++) /^[a-z]$/i.test(c);
document.write(new Date - start);
とやるとIE7、8では5%程前者の方が早い
IEはignoreオプションが苦手という話
933:Name_Not_Found
08/07/20 23:58:36
js> 'ignore' in /-/
false
js> 'ignoreCase' in /-/
true
934:Name_Not_Found
08/07/21 11:45:20
マージでソートするって簡単に言うとどういうことですか?
調べてもさっぱりわかりません。
935:Name_Not_Found
08/07/21 12:10:24
マージソートでググるといいと思います!
936:Name_Not_Found
08/07/21 17:38:03 kjXBFRXb
FireFoxで動作しなくて困ってます。
<img onMousemove="alert();">
アドバイスお願いします。
937:Name_Not_Found
08/07/21 18:11:47
<img onmousemove="alert('');">
938:Name_Not_Found
08/07/21 18:57:20
エラーコンソールもFirebugも無しでどうやって開発しているのやら
939:Name_Not_Found
08/07/21 18:59:28
つーか、FireFoxの環境はIEに比べるとへぼすぎるだろ。
940:Name_Not_Found
08/07/21 19:00:04
>>936
XHTMLだと大文字小文字区別するんだっけか。
941:Name_Not_Found
08/07/21 19:04:16
>>939
逆になってるぞ
942:Name_Not_Found
08/07/21 19:06:38
>>941
む、マジで言ってるのか。
breakpointならVWDだし、DOMインスペクタならシェアだがWebDeveloperV2だし、メモリリーク検知ならM$純正のあるし。
943:Name_Not_Found
08/07/21 20:48:28
>>942
URLリンク(journal.mycom.co.jp)
944:Name_Not_Found
08/07/21 21:00:31
>>943
「Internet Explorer Developer Toolbar」とかいう糞ツール使ってるからだろ。
945:Name_Not_Found
08/07/21 21:10:46
Visual Web Developer 2008 Express Editionも含めた上で比較してるように見えるが
そもそも VWD って IE と関係ないじゃんとか言ったら駄目ですか?
946:Name_Not_Found
08/07/21 21:15:46
外部アプリ使わないといけない時点で糞だな、めんどくさい。firefoxならアドオン入れれば単体で出来るし
947:Name_Not_Found
08/07/21 21:19:51
あの気持ちわるいやつをメインの開発環境するのがまず間違い
948:Name_Not_Found
08/07/21 21:32:52
>>943
そこ、IE8のJavaScriptデバッガに触れられてないね。
試したところ、Developer Toolbarのどうでもいい機能をそのままに、
breakpoint打てるようにして、watchとcallstack見れるようにして、
CSSプロパティ単位でON/OFF出来るようにしてある。
DOMツリー上をみながら、プロパティの書き換えがオンザフライで可能。
でも、まだUIがこなれてない感じ。
949:Name_Not_Found
08/07/21 21:44:24
Visual Web Developer 2008って2005と比べて、やたら重くないか。
自動補完機能用の辞書作成だとおもうが、いらねーって感じ。
950:Name_Not_Found
08/07/21 21:56:36
FireFoxでmousemove時にマウスの左ボタンが押されてるか知りたいです。
IEと同じようにevent.buttonみたけど、判断つかないようでした。><
951:Name_Not_Found
08/07/21 22:09:22
mousedownイベント発生時にevent.buttonが0ならフラグを立てて、みたいにすれば?
952:Name_Not_Found
08/07/21 22:43:24
>>951
画面全体でイベント拾わないといけなくなる?
ウィンドウの画面外までマウスを持って行って、mouseupするとイベント拾えないんじゃ
とか気になることが山積するような。
953:Name_Not_Found
08/07/22 03:57:52
>>950
何に使うの?
954:Name_Not_Found
08/07/22 09:57:54
>>953
955:Name_Not_Found
08/07/22 10:00:20 RMUJweds
あの、質問させてください。
結論だけでも大丈夫です。
タブブラウザやUserAgentSwitcherのようにUAを任意に変更できる
仕様をHTMLとJavaScriptのみを用いて作ることは可能ですか?
956:Name_Not_Found
08/07/22 10:03:50
できません
957:Name_Not_Found
08/07/22 10:07:36 RMUJweds
>>956
おおーありがとうございます
958:Name_Not_Found
08/07/22 12:21:15 spDCqlEz
>>245
var evt = document.createEvent("KeyboardEvent");
evt.initKeyEvent("keydown", true, true, null, false, false, false, false, "J".charCodeAt(0), 0);
document.dispatchEvent(evt);
URLリンク(developer.mozilla.org)
959:Name_Not_Found
08/07/22 13:29:35
新スレは975超えたら。テンプレ論議は全然できなかったね、
道場訓復活は今道場訓として入っているものをどうするかが
決まらないと難しいかも(道場訓が場所ふさぎだという意見が複数あり
今のようにしたんで)。
960:Name_Not_Found
08/07/22 23:01:46
>>958
keydownのような低レベルイベントにdispatchEventは基本的には向かない。
理由はデフォルト動作を持たないため。
でも、>>245を見る限り、デフォルト動作を期待するようなコードではなさそうだね。
961:Name_Not_Found
08/07/23 14:28:32
質問です。
function F(arg){
var obj=document.getElementById("test")
//---
}
のように関数内でオブジェクト宣言をした場合、この関数を呼び出
すたびに新しくオブジェクトが作られるのでしょうか。もしそうだ
とすると頻繁に関数を使ったばあには、メモリだらけになりませんか。
もっと効率的な書き方はあるのでしょうか。普段何気なく書いていた
のですが恐ろしくなりました。
962:Name_Not_Found
08/07/23 15:26:15
>>961
それは既にあるDOMオブジェクトの参照をobjという変数に代入してるから
新たにオブジェクトが作られてるわけではないよね。
それともvar objのことを言ってる?
963:Name_Not_Found
08/07/23 15:29:42
メモリだらけになったらうれしいとおもいます!
964:Name_Not_Found
08/07/23 16:12:46
質問です.
htmlソース
<body onLoad="set('disp(配列1,配列2)')">
jsファイル
function disp(配列1,配列2){
...
}
htmlからjavascriptの関数に配列を渡したいんですけど
「配列1」「配列2」の部分ってどのように書けばいいですか?
965:Name_Not_Found
08/07/23 16:31:14
hairetsu1 hairetsu2
966:Name_Not_Found
08/07/23 16:36:28
>>965
そのように書いても
javascriptで配列の中身を見たら「undefined」となってしまいます…
967:Name_Not_Found
08/07/23 16:38:09
undefinedになるソースうp
968:Name_Not_Found
08/07/23 16:54:00
javaでhtmlをはきだしています.
まず
sb.append("<SCRIPT Language=\"JavaScript\" SRC=\"popup.js\"> </SCRIPT>");
でjsファイルを読んで
次にデータベースの情報をscheduledate[]とschedule[]に順に入れていって
sb.append("<body onLoad=\"set(disp(\'" + scheduledate + "\',\'"+ schedule +"\'))\">");
でjavascriptの関数に渡しています.
jsファイル(popup.js)内は
function disp(scheduledate,schedule){
newWin = window.open("", "child", "width=450,height=400,scrollbars=yes");
newWin.document.open();
newWin.document.write("<HTML><HEAD><TITLE>title</TITLE></HEAD>");
newWin.document.write("<BODY>");
newWin.document.write(scheduledate[0]);
newWin.document.write(schedule[0]);
newWin.document.write("</BODY></HTML>");
newWin.document.close();
}
こんなかんじで
実行するとscheduledate[0]とschedule[0]がundefinedと表示されます.
969:Name_Not_Found
08/07/23 17:06:12
javaでとか関係ねーだろ
最終的に吐き出したhtml書けこのスットコドッコイ
970:Name_Not_Found
08/07/23 17:13:52
>>968
setっていう関数は何をやってくれるの?
javaからhtmlに変換されるときに何かに変換されるってこと?
>>964の状態だとjavascriptの中にset関数がいないとおかしいのだけど。
971:Name_Not_Found
08/07/23 17:18:45
最終的に吐き出したhtmlは
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "URLリンク(www.w3.org)">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" Content="text/html;charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<title>title</title>
</head>
<SCRIPT Language="JavaScript" SRC="popup.js"> </SCRIPT>
<body onLoad="set(disp('[Ljava.lang.String;@1fd5e2','[Ljava.lang.String;@12f9ee'))">
</body>
</html>
と
<HTML><HEAD><TITLE>title</TITLE></HEAD><BODY>undefinedundefined</BODY></HTML>
です.
972:Name_Not_Found
08/07/23 17:23:15
Java != JavaScript
973:Name_Not_Found
08/07/23 17:26:03
>>970
setはsetTimeoutの0秒バージョンだと思って使ってます.
974:Name_Not_Found
08/07/23 17:35:31
>>972
javaで配列を連結して文字列にする
↓わたす
javascriptで文字列を分解して配列にする
みたいな方法をとるしかないですかね・・・
975:Name_Not_Found
08/07/23 17:42:17
<body onLoad="disp([要素1, 要素2, 要素3], [要素a, 要素b, 要素c])">
みたいなコードをJavaで生成すればいいんでねーの
976:Name_Not_Found
08/07/23 17:57:53
<body onLoad="set(disp('[Ljava.lang.String;@1fd5e2','[Ljava.lang.String;@12f9ee'))">
これで上手くいく方がおかしいだろ…
977:Name_Not_Found
08/07/23 18:26:50
無名関数を使うと、
var a = b.replace(/パターン/, function(p0, p1){ return 処理結果; });
↑こういうことができると思うんですが、
dcument.write(function(){
var list = new Array('a', 'b', 'c', 'd', 'e');
var text = '';
while (list.length > 0) {
var r = Math.floor(Math.random() * list.length);
text += list[r];
list.splice(r, 1);
}
return text;
});
↑みたいなことは出来ないんでしょうか?
要は、一度しか使わない関数を定義せず(?)に出力できるかってことなんですが。
978:Name_Not_Found
08/07/23 19:06:02
document.write(function(){
var list = new Array('a', 'b', 'c', 'd', 'e');
var text = '';
while (list.length > 0) {
var r = Math.floor(Math.random() * list.length);
text += list[r];
list.splice(r, 1);
}
return text;
}());
979:Name_Not_Found
08/07/23 19:48:54
くだらない質問ですいませんが、
MACのサファリで作動のチェックはする物ですか?
クレームきちゃって・・・・Orz
980:Name_Not_Found
08/07/23 20:00:07
Safari1ならつっぱねろ
Safari2なら努力はしてみろ
Safari3で動かないのはお前が悪い可能性大
981:Name_Not_Found
08/07/23 20:31:38
便乗で聞いていい?
Mac 版 Safari と Win 版 Safari って結構違うもの?
982:Name_Not_Found
08/07/23 21:05:32
MACのIEじゃないんだから大して変わらないはず
983:Name_Not_Found
08/07/23 21:25:24
>>979
クレームを出した奴がマカーなら
少数民族は被害妄想で差別されていると感じるとギャーギャー騒ぎ出すので
気にするな
お前さんの雇用主や上司、取引相手からクレームがついたのなら
粛々と修正しろ
984:977
08/07/23 22:32:48
>>978
一瞬何が違うのかわからなかったですが、わかりました!
ありがとうございます!
985:Name_Not_Found
08/07/24 08:11:48
<div id="field">
<div>テキスト1</div>
<div>テキスト2</div>
<div>テキスト3</div>
<div>テキスト4</div>
<div>テキスト5</div>
</div>
field内のdivタグ内のテキストがクリックされた場合に、
そのテキストのCSSを変更したいのですが、divタグ内にonclickをイベントを書く以外に方法はありますか?
js内で
onmouse = function()
でイベントを設定したいのですが、設定の仕方に困ってます
986:Name_Not_Found
08/07/24 08:27:06
>>985
this
987:Name_Not_Found
08/07/24 08:27:14
>>985
URLリンク(developer.mozilla.org)
988:Name_Not_Found
08/07/24 09:21:40
アホ外人君を召喚するから待ってて
989:Name_Not_Found
08/07/24 09:50:48
お話中すいません。
o.toSource()がIEだとだめみたいなんですが
何か打開策ありますか?
990:979
08/07/24 09:55:18
>>980 >>983
ありがとうございます。
相手はマカなので、それなりの対応する事にします。
助かりました。
991:Name_Not_Found
08/07/24 12:18:31
次スレ
スレリンク(hp板)l50
992:Name_Not_Found
08/07/24 12:26:51
埋め
993:Name_Not_Found
08/07/24 12:37:50
梅
994:Name_Not_Found
08/07/24 12:44:50
埋め
995:Name_Not_Found
08/07/24 12:55:58
次スレ
スレリンク(hp板)l50
996:Name_Not_Found
08/07/24 13:08:08
ume
997:Name_Not_Found
08/07/24 13:09:07
ume
998:Name_Not_Found
08/07/24 13:31:32
埋め
999:Name_Not_Found
08/07/24 13:34:39
999
1000:Name_Not_Found
08/07/24 13:35:12
1000
1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。