ホームページ > 記事 > ウェブフロントエンド > 幅を0として表示するマジックコード? _html/css_WEB-ITnose
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title><script language="javascript" type="text/javascript"> function showMsg(){ document.getElementById("textfield").value=document.getElementById("textfield").width;} </script></head><body> <input type="submit" name="Submit" value="提交"id="Submit" onclick="showMsg()" /> <input type="text" style="width:100px;" id="textfield" name="textfield" /></body></html>
--》
document.getElementById("textfield").style.width
function showMsg(){ var x=document.getElementById("textfield").style.width; var y=x.split("px"); document.getElementById("textfield").value=y[0];}
function showMsg(){ var x=document.getElementById("textfield").style.width; var y=x.split("px"); document.getElementById("textfield").value=y[0];}
もちろん、文字列をカットする方法は知っていますが、問題は、結局のところ、2 番目の方法ではスタイルを直接取得できるのに、なぜそれが出力されるのかということです。 0として?
function showMsg(){ var x=document.getElementById("textfield").style.width; var y=x.split("px"); document.getElementById("textfield").value=y[0];}
もちろん、文字列をカットする方法は知っていますが、問題は、結局のところ、2 番目の方法では、幅をネイティブ インターフェイスで直接取得できるのに、なぜ次のように出力されるのかということです。 0?
の取得方法です。
document.getElementById("textfield").width
--》
動作するかどうか見てみましょう