ねこ丸です。
davi writes:
> >エラー: uncaught exception: [Exception... "Not enough arguments"
> > nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)"
> > location: "JS frame ::file:///〜/hoge.html ::
> >SetWidthHeightSize :: line 123" data: no]
>
> とか意味不明な無愛想なエラーを返してきます。
> setAttributeに放り込んだユーザ定義変数が、うまく展開されて
> いないのか?という印象です。
せめてこの line 123 がどこに相当するのか教えてくれないとこちらは手出
しできないです。
なんのこっちゃよー分からんと思いましたが、下を見たら一発。
> 以上の実験から帰納して、「"」の展開が上手くいっていないのかなぁ?
> と考え、実体参照文字列「"」で置き換えてみたり、
> string = new String(string) で、
>
> objectTag.setAttribute(new String(OTRMW) );
>
> とやってみましたが、どうも上手く行かない…。
setAttribute() の引数は一つじゃないです。name, value は別々な値が入り
ます。一緒の文字列にしたらそら動きません。上のエラーも value がねーぞ、
と怒られてるわけです。
それが分かったところで読み返してみると
> setAttributeに放り込んだユーザ定義変数が、うまく展開されて
> いないのか?という印象です。
実はほとんど正解にたどりついています。問題は「仕様」をチェックしてい
なかったこと。ちゃんと使い方は調べておきましょう。
http://www.doraneko.org/misc/dom10/19981001/ecma-script-language-binding.html
> setAttribute(name, value)
> このメソッドは void を返す。name パラメータは DOMString 型である。
> value パラメータは DOMString 型である。
こういう情報は下手に入門用に「解説」してくれるものより仕様書の方が
チェックしやすいです。仕様書で入門しようとするのは不幸ですが、だからと
言って仕様書がダメということではありませんよ :-)
--
ねこ丸