ねこ丸さん < こん??は でび@M$の月例BugFixのせいでまだ寝てない です
# 本質的にDOMそのものの話題でもなさそうなのでタイトル変えました。
On Sun, 15 Feb 2009 08:47:07 +0900 (JST)
wtnabe@... (ねこ丸) wrote:
> せめてこの line 123 がどこに相当するのか教えてくれないとこちらは手出
> しできないです。
その行は objectTag.setAttribute(OTRMW); そのものに該当します。
必要最低限度を見極めて、切り出して示す、ってのはわかっている
人でないと難しいですね。
html宣言開始から末尾までコード全部載せるのは迷惑だろうし。
前回は、BLOGに貼り付けて皆さんへの迷惑を回避しようとしたんですが、
いつまでもその方式じゃなぁ…という気持ちもあります。
> なんのこっちゃよー分からんと思いましたが、下を見たら一発。
> setAttribute() の引数は一つじゃないです。name, value は別々な値が入り
> ます。一緒の文字列にしたらそら動きません。上のエラーも value がねーぞ、
> と怒られてるわけです。
>
> それが分かったところで読み返してみると
>
> > setAttributeに放り込んだユーザ定義変数が、うまく展開されて
> > いないのか?という印象です。
>
> 実はほとんど正解にたどりついています。問題は「仕様」をチェックしてい
> なかったこと。ちゃんと使い方は調べておきましょう。
むぅ。以下、再掲しますが、
---------------------------------------
○Javascriptその2(でびの応用)
function SetWidthHeightSize(){
var RMW = document.getElementById("right_menu").clientWidth;
var RMH = document.documentElement.clientHeight;
var OTRMW = '"width","' + RMW + '"' ;
objectTag.setAttribute(OTRMW);
var OTRMH = '"height","' + RMH + '"' ;
objectTag.setAttribute(OTRMH);
alert(RMW);
alert(RMH);
alert(OTRMW);
alert(OTRMH);
}
---------------------------------------
つまり、alert「OTRMW」や「OTRMH」で出てきた「"width","800"」
やら、「"height","600"」やら、というような文字列は、
> > setAttribute(name, value)
> > このメソッドは void を返す。name パラメータは DOMString 型である。
> > value パラメータは DOMString 型である。
の中では「"height","600"」がヒトカタマリとしてnameパラメータ
だと認識されている、ということでしょうか?
でもでもお言葉ですが、「○Javascriptその2(でびの応用)」を
POSTする以前に、
---------------------------------------
function SetWidthHeightSize(){
objectTag.setAttribute('"width","' + document.getElementById("right_menu").clientWidth; + '"');
objectTag.setAttribute('"height","' + document.documentElement.clientHeight; + '"');
}
---------------------------------------
も試して、エラーが返ってくることは確認済みです。
てことは、パラメータを「2つ」として与えるには、どうすれば?
あんまり眠いので、まだ試していませんが、あと、できそうな方法は
*何も入っていない所へ、「"height","600"」を「"height"」「,」
「"600"」の3つの配列にして、順次追記で放り込む。
*既にダミーとして入っている「"height","600"」をsplitする。
*既にダミーとして入っている「"height","600"」を正規表現でreplaceする。
くらいしか思い浮かびません。さて、どうしたもんでしょ?
> こういう情報は下手に入門用に「解説」してくれるものより仕様書の方が
> チェックしやすいです。仕様書で入門しようとするのは不幸ですが、
「こういう時はこんなのを探す」って見極め、ができるようになるのが
課題ですね。
「これを知りたいときにはこの辞書」ってのは、文学系や歴史系とか
ではある程度わかるんですが、プログラミング言語はあまりにも
スピードが速く、生きている学問なので、融通無碍さを手に入れるのは
至難の業に感じます。
特に、オブジェクト/メソッド/プロパティ/コレクションとか
言われると、ソシュールの言語学テキストを思い出して眠くなります。
「セロテープ」はシーニュか?シニフィエか?答えなさい、みたいな…。
-------------------
でもね、一昨年より目に見えて進歩したのを、1個だけ、
昨日・今日の作業で実感したんですよぉ。
それは、去年、ねこ丸さんたちにじっくり、繰り返し、
教えてもらったファンクションへの切り出し。
「あ、これでヒトカタマリの手続きになってる。
外に切り出して、呼び出しできるじゃん。」みたいな。
これの見極めが時分なりに、ちょっとできるようになった点。
これ、自分的にはすげー進歩なの。うれしー。
いやはや、ありがとうございます。
ただ、スクリプトのかなり前方にファンクション貼り付けて、
その中で使っているユーザ定義変数が、切り出し前のカタマリ
の中でvarしていて動かない、という失敗も、当然、やっちまって、
そこもそれで勉強になりましたけど。
でび http://davi.txt-nifty.com/1984/