0

JavaScript を使用してフォームを作成し、配置しようとしています。次のコードを使用します。

var f = document.createElement("form");
f.setAttribute('method',"post");
f.setAttribute('action',"submit.php");

// Position form
f.setAttribute('offsetTop',offsetTop);
f.setAttribute('offsetLeft',parseInt(offsetLeft)+parseInt(imageWidth));

document.getElementsByTagName('body')[0].appendChild(f);

しかし、Firebug を使用して DOM を調べると、フォームの位置は、フォームの配置呼び出しをまったく使用していない場合と同じです。つまり、画像である最後の要素の下にあります。

4

2 に答える 2

2

これを試して。

var f = document.createElement("form");
f.setAttribute('method',"post");
f.setAttribute('action',"submit.php");

// Position form
f.style.position = "absolute";
f.style.top = offsetTop +"px";
f.style.left = (parseInt(offsetLeft)+parseInt(imageWidth)) +"px";
于 2013-04-19T18:45:27.267 に答える
1

offsetTop と offsetLeft は CSS プロパティではありません。そして、静的な位置ではなく使用する必要があります。「スタイル」を使用します。

f.style.position = "absolute";//or relative, fixed
f.style.top = offsetTop+"px";//set css top
于 2013-04-19T18:45:50.243 に答える