js文件中用document.getElementByid怎么获取不到html文件中的元素呀?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js文件中用document.getElementByid怎么获取不到html文件中的元素呀?相关的知识,希望对你有一定的参考价值。

代码如下:
js文件:function Mario()
this.x=0;
this.y=0;
var mymar=document.getElementById('myMario');//引入不了那个img
this.move=function(direct)
switch(direct)
case 0://up
window.alert("1");
var top=mymar.style.top;
window.alert(top);//这段显示为null
top=top.substr(0,mymar.style.top.length-2);
var top1=top.parsrInt(top);
if(top1<10)
window.alert("over");
return ;

mymar.style.top=(top1-10)+"px";
break;
case 1://left
var left=mymar.style.left.substr(0,mymar.style.left.length-2);
var left1=left.parsrInt(left);
if(left1<10)
window.alert("over");
return ;

mymar.style.left=(left1-10)+"px";
break;
case 2://right
var left=mymar.style.top.substr(0,mymar.style.left.length-2);
window.alert(left);
var left1=left.parsrInt(left);
if(left1>490)
window.alert("over");
return ;

mymar.style.left=(left1+10)+"px";
break;
default:
var top=mymar.style.top.substr(0,mymar.style.top.length-2);
var top1=top.parsrInt(top);
if(top1>390)
window.alert("over");
return ;

mymar.style.top=(top1+10)+"px";
break;


//js文件
<!DOCTYPE html>
<html>
<head>
<title>css1.html</title>

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
<link rel="stylesheet" href="WEB-INF/mario.css" type="text/css"></link>
<script type="text/javascript" src="WEB-INF/lib/mario.js"></script>
</head>

<body>
<div class="gamediv">
<img src="mario.jpg" id="myMario"/>
</div>
<div class="keydiv">
<table border=1px;>
<tr><td colspan="3">控制方向</td></tr>
<tr><td>**</td><td><input type="button" value="↑" onclick="marioMove(0)"/ ></td><td>**</td></tr>
<tr><td><input type="button" value="←" onclick="marioMove(1)"/></td><td>**</td><td><input type="button" value="→" onclick="marioMove(2)"/></td></tr>
<tr><td>**</td><td><input type="button" value="↓" onclick="marioMove(3)" /></td><td>**</td></tr>
</table>
<script language="javascript">
var m=new Mario();
function marioMove(val)
window.alert("ok");
m.move(val);

</script>
</div>

</body>
</html>//html文件
求大神帮忙改一下

可以获取元素,你的img又没指定过top样式,当然没值
卧槽,重新看了下,这都写的什么垃圾代码,函数名拼错自己都不会查一下么?语法也都不对,left.parseInt有这种写法的? parseInt为毛要从left里面点出来,又不是left定义的函数;不是应该是left1 = parseInt(left);的么, 这都什么跟什么啊;要是我徒弟肯定被我骂死。追问

我在css文件里制定了img的position 和top 、left值
//css文件 我在js文件的函数下写window.alert(top)输出为空诶,应该是没获取到图片吧,新手刚刚自学一个星期,还请老师请教请教
.gamediv img
width:50px;
position:absolute;
left:0px;
top:0px;

参考技术A 将<script type="text/javascript" src="WEB-INF/lib/mario.js"></script>放在</table>后面试试看

js DOM操作

查找元素:
               根据id获取元素
               document.getElementById("id");
               根据class获取元素
               document.getElementsByClassName("class");
               根据标签名获取元素
               document.getElementsByTagName("div");
               根据name获取元素
               document.getElementsByName("name");
        操作内容:
               1.获取对象里的html代码与文字
                 获取的对象.innerHTML;
2.获取对象里的文字----兼容有问题
  获取的对象.innerText;textContent;

             

 

               3.改变对象里的html代码与文字

获取的对象.innerHTML="改变的内容";

 

4.改变对象里的文字----兼容有问题

获取的对象.innerText="改变的内容";

 

表单可进行的特殊操作

1.获取对象的value值

 获取的对象.value

操作属性

1.设置一个属性,添加或更改

获取的对象.setAttribute("属性名","属性值")

2.获取属性的值

获取的对象.getAttribute("属性名");

3.移除一个属性

获取的对象.removeAttribute("属性名");

   操作样式

1.操作样式

获取的对象.style.样式=”” ;     //操作时属性所有的-都删除  后面的第一个字母改成大写

2.获取样式

Var a = 获取的对象.style.样式

 

checked="checked" 

false

aaa[a].checked = true;    //判断是否被选中

以上是关于js文件中用document.getElementByid怎么获取不到html文件中的元素呀?的主要内容,如果未能解决你的问题,请参考以下文章

iOS js

js - 点击事件

常用JQ JS方法集合

JS获取HTML DOM元素的方法

JS数组的find()和some()方法

JS鼠标经过