Javascript 访问HTML块中的innerHTML文本节点
我正在尝试访问这个巨大的HTML跨度中的12:00数字。它在Javascript 访问HTML块中的innerHTML文本节点,javascript,dom,innerhtml,Javascript,Dom,Innerhtml,我正在尝试访问这个巨大的HTML跨度中的12:00数字。它在中。我尝试使用div的getElementById().innerHTML,然后使用一个函数console log,该函数在单击元素时触发,没有任何错误 function minute(){ time=window.document.getElementById('gameClock').innerHTML; console.log(时间); } minusMinute=window.document.getElementById('
中。我尝试使用div的getElementById().innerHTML
,然后使用一个函数console log
,该函数在单击元素时触发,没有任何错误
function minute(){
time=window.document.getElementById('gameClock').innerHTML;
console.log(时间);
}
minusMinute=window.document.getElementById('minusMinute');
addEventListener('click',minus,false)代码>
12:00
您有多个问题:
- 您已经声明了一个名为
minimute
的函数,但是您还声明了一个名为minimute
的变量,并将其赋值将覆盖该函数。那么你的
minusMinute.addEventListener('click', minusMinute, false);
行将元素连接为单击处理程序
- 您的HTML还有
onclick=“minute”
。如果minimute
是一个函数,那么它不会做任何事情,因为浏览器创建的用于包装代码的函数只会引用minimute
,而不会调用它onXyz
属性处理程序应该包含函数调用(例如,onclick=“minute()”
),但是如果使用的是addEventListener
,则根本不需要onclick
属性
- 虽然12:00确实在一个带有
id=“gameClock”
的元素中,但还有很多其他元素。但是,在id=“gameTime”
的帮助下,它在span中完全独立
这里有一个固定版本,改动最小:
function minute(){
var time=window.document.getElementById('gameTime').innerHTML;
console.log(时间);
}
window.document.getElementById('minusMinute')。addEventListener('click',minusMinute,false)代码>
下午12:00
您有多个问题:
- 您已经声明了一个名为
minimute
的函数,但是您还声明了一个名为minimute
的变量,并将其赋值将覆盖该函数。那么你的
minusMinute.addEventListener('click', minusMinute, false);
行将元素连接为单击处理程序
- 您的HTML还有
onclick=“minute”
。如果minimute
是一个函数,那么它不会做任何事情,因为浏览器创建的用于包装代码的函数只会引用minimute
,而不会调用它onXyz
属性处理程序应该包含函数调用(例如,onclick=“minute()”
),但是如果使用的是addEventListener
,则根本不需要onclick
属性
- 虽然12:00确实在一个带有
id=“gameClock”
的元素中,但还有很多其他元素。但是,在id=“gameTime”
的帮助下,它在span中完全独立
这里有一个固定版本,改动最小:
function minute(){
var time=window.document.getElementById('gameTime').innerHTML;
console.log(时间);
}
window.document.getElementById('minusMinute')。addEventListener('click',minusMinute,false)代码>
下午12:00
当Dom元素存在时,首先需要执行此操作,例如onload:
window.onload=function() {
var minusMinute = window.document.getElementById('minusMinute');
minusMinute.addEventListener('click', minusMinute, false);
}
或者更简单更兼容-我想你想要的是游戏时间而不是游戏时钟
window.onload=function() {
document.getElementById('minusMinute').onclick=function() {
var time = document.getElementById('gameTime').innerHTML;
console.log(time);
}
}
上面的匿名函数还解决了函数和对象之间的名称冲突
html中还有一些奇怪的onclick需要删除,
最后,addEventListener与所有浏览器不兼容
这是我的代码和你清理过的HTML-我必须添加一些内容,以查看它
window.onload=function(){
document.getElementById('minusMinute')。onclick=function(){
var time=document.getElementById('gameTime').textContent;
console.log(时间);
}
}
12:00
当Dom元素存在时,首先需要执行此操作,例如onload:
window.onload=function() {
var minusMinute = window.document.getElementById('minusMinute');
minusMinute.addEventListener('click', minusMinute, false);
}
或者更简单更兼容-我想你想要的是游戏时间而不是游戏时钟
window.onload=function() {
document.getElementById('minusMinute').onclick=function() {
var time = document.getElementById('gameTime').innerHTML;
console.log(time);
}
}
上面的匿名函数还解决了函数和对象之间的名称冲突
html中还有一些奇怪的onclick需要删除,
最后,addEventListener与所有浏览器不兼容
这是我的代码和你清理过的HTML-我必须添加一些内容,以查看它
window.onload=function(){
document.getElementById('minusMinute')。onclick=function(){
var time=document.getElementById('gameTime').textContent;
console.log(时间);
}
}
12:00
就像前面提到的mplungjan一样,当您试图获取元素的内容时,应该确保元素在那里(通过在末尾包含javascript或使用onload函数)
您还遇到的另一个问题是,您对全局变量minusMinute和函数名minusMinute使用了相同的名称,这样会产生同样的错误。就像前面提到的mplungjan一样,在尝试获取其内容时,您应该确保元素在那里(在末尾包含javascript或使用onload函数)
您还遇到的另一个问题是,您对全局变量minusMinute和函数名minusMinute使用了相同的名称,这样会产生错误。如果是这样,他会提示错误。无论如何,还有几个其他问题。onload
在这个过程中确实很晚。最好简单地说一下你首先需要在加载时这样做:“不,他没有,这很糟糕