同意一楼,应该是代码放错位置了.你的js代码应该放到id为tip的控件下面,如下<div id="tip" style="position:absolute;display:none">aaa</div> <script type='text/javascript'> var tarElem=document.getElementById('tip'); var news=new Array(); for(var i=0;i <6;i++){ news[i]='这是消息 <font color=#ff0000> '+i+' </font> 的内容'; } function showTip(){ // show the message box //alert(tarElem); var x = document.body.scrollLeft+event.clientX; var y = document.body.scrollTop+event.clientY; tarElem.style.display = 'block'; tarElem.style.posLeft = x + 10; tarElem.style.posTop = y + 10; } function closeTip(){ // to close the tip box tarElem.style.display = 'none'; } function pack(kid){ // pack content accordingly to div var content = news[kid]; tarElem.innerHTML = content; } document.onclick=showTip; </script>
<script type='text/javascript' defer> var tarElem=document.getElementById('tip'); var news=new Array(); for(var i=0;i <6;i++){ news[i]='这是消息 <font color=#ff0000> '+i+' </font> 的内容'; } function showTip(){ // show the message box //alert(tarElem); var x = document.body.scrollLeft+event.clientX; var y = document.body.scrollTop+event.clientY; tarElem.style.display = 'block'; tarElem.style.posLeft = x + 10; tarElem.style.posTop = y + 10; } function closeTip(){ // to close the tip box tarElem.style.display = 'none'; } function pack(kid){ // pack content accordingly to div var content = news[kid]; tarElem.innerHTML = content; } document.onclick=showTip; </script> defer属性,页面加载后运行,在tip初始化之前获得tip就是null
<script type='text/javascript'>
var tarElem=document.getElementById('tip');
var news=new Array();
for(var i=0;i <6;i++){
news[i]='这是消息 <font color=#ff0000> '+i+' </font> 的内容';
} function showTip(){
// show the message box
//alert(tarElem);
var x = document.body.scrollLeft+event.clientX;
var y = document.body.scrollTop+event.clientY;
tarElem.style.display = 'block';
tarElem.style.posLeft = x + 10;
tarElem.style.posTop = y + 10;
}
function closeTip(){
// to close the tip box
tarElem.style.display = 'none';
} function pack(kid){
// pack content accordingly to div
var content = news[kid];
tarElem.innerHTML = content;
} document.onclick=showTip;
</script>
var tarElem=document.getElementById('tip');
var news=new Array();
for(var i=0;i <6;i++){
news[i]='这是消息 <font color=#ff0000> '+i+' </font> 的内容';
} function showTip(){
// show the message box
//alert(tarElem);
var x = document.body.scrollLeft+event.clientX;
var y = document.body.scrollTop+event.clientY;
tarElem.style.display = 'block';
tarElem.style.posLeft = x + 10;
tarElem.style.posTop = y + 10;
}
function closeTip(){
// to close the tip box
tarElem.style.display = 'none';
} function pack(kid){
// pack content accordingly to div
var content = news[kid];
tarElem.innerHTML = content;
} document.onclick=showTip;
</script>
defer属性,页面加载后运行,在tip初始化之前获得tip就是null
2.上述的代码是放到一个外部的JS文件中,所以在定义元素之后?是不是要有那个元素之后来引用这个元素啊!
脚本引用在元素定义之前的问题以前也遇到过.