js获取一个document.write()创建的对象的问题 <script>document.write(" <div id='objDiv'></div> ");var obj = document.getElementById('objDiv');alert(obj)</script>可以的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你好!你放在body的前面看看呢? 放在body里面确实可以,但下面这样就不行,输出null,如果加上则输出object<!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"><!-- InstanceBegin template="/Templates/moban.dwt" codeOutsideHTMLIsLocked="false" --><head><script>document.write("<div id='objDiv'></div>");var obj = document.getElementById('objDiv');alert( obj);</script></head><body></body></html> 页面还没生成,怎么取呀注意页面的解析顺序,或把var obj = document.getElementById('objDiv');alert( obj); 放在onload里面 你说的是对的!但我加了 就可以了也许大家会认为这个问题太钻牛角尖了,但我确实想搞懂他,因为我做的是嵌入到别人网页中去的js,所以考虑得比较多http://kf.ichat.net.cn/这个是我们公司,右边的浮动框是我要负责的,就出现了上面的问题,我只是想搞懂为什么 <!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"> <!-- InstanceBegin template="/Templates/moban.dwt" codeOutsideHTMLIsLocked="false" --><head><script>document.write("<span id='objDiv'></span>11111");var obj = document.getElementById('objDiv');alert(obj);</script></head><body></body></html>在div前或后 加个东西都可以这个具体的原因不知道,去51js或蓝色问问 可以不用document.write;<body>//....原有内容//以下代码需要放在最底下。<script type="text/javascript">var $ = function(el){return document.getElementById(el);}var $body = document.body;var el = document.createElement('div');el.id = 'someid';el.innerHTML = '内容....<span>其他....</span>';el.className = 'someCssClass';//样式表class名称$body.appendChild(el); //这里附加到document.body上去alert($('someid')); //return HTMLElement.</script></body> To 楼上:我正是要解决body没加载完就执行的问题,所以才改成write方式的因为这个嵌入代码不能依赖客户的网页,有时候客户的网页要加载好久,我们的这个浮动框就出不来了,呵呵,也谢谢你 PHP如何取得跳转过来的网址? 关于JS的attr方法。。请帮忙 php上传图片出现在问题,请求解决? 用PHP怎么生成高质量的缩略图? ajax的引用 上传问题 散分了,哪些PHP的论坛全站系统最好 如何让apache搭建的服务器支持ASP呢,跪求高人指点? 怎样把带参数的php嵌入到当前页中呢? [在线]一个不太明白的老帖子正则问题,请指教 请教!关于php数组! 弱弱的问一下:开发环境与应用环境不一致,可以直接转移吗?
你放在body的前面看看呢? 放在body里面确实可以,但下面这样就不行,输出null,如果加上则输出object<!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"><!-- InstanceBegin template="/Templates/moban.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<script>
document.write("<div id='objDiv'></div>");
var obj = document.getElementById('objDiv');
alert( obj);
</script>
</head>
<body>
</body>
</html>
注意页面的解析顺序,或把var obj = document.getElementById('objDiv');alert( obj); 放在onload里面
但我加了 就可以了也许大家会认为这个问题太钻牛角尖了,但我确实想搞懂他,因为我做的是嵌入到别人网页中去的js,所以考虑得比较多
http://kf.ichat.net.cn/
这个是我们公司,右边的浮动框是我要负责的,就出现了上面的问题,我只是想搞懂为什么
<!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"> <!-- InstanceBegin template="/Templates/moban.dwt" codeOutsideHTMLIsLocked="false" -->
<head><script>
document.write("<span id='objDiv'></span>11111");
var obj = document.getElementById('objDiv');
alert(obj);
</script></head>
<body>
</body>
</html>在div前或后 加个东西都可以
这个具体的原因不知道,去51js或蓝色问问
//....原有内容//以下代码需要放在最底下。
<script type="text/javascript">
var $ = function(el){return document.getElementById(el);}
var $body = document.body;var el = document.createElement('div');
el.id = 'someid';
el.innerHTML = '内容....<span>其他....</span>';
el.className = 'someCssClass';//样式表class名称
$body.appendChild(el); //这里附加到document.body上去alert($('someid')); //return HTMLElement.
</script>
</body>
我正是要解决body没加载完就执行的问题,所以才改成write方式的
因为这个嵌入代码不能依赖客户的网页,有时候客户的网页要加载好久,我们的这个浮动框就出不来了,呵呵,也谢谢你