在mac osx的firefox浏览器中.当点击按钮时,Activeelement返回body而不是button元素
In firefox browser of mac osx Document.activeelement returns body instead of button element on click of button
在我的javascript上,我使用文档。activeelement来获取活动元素,但是对于按钮点击,它给我的是body而不是按钮在Mac OSX Yosemite的firefox浏览器中。
有谁能帮助我如何获得活动元素作为按钮。
示例代码
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function MainElement(){
ActiveElement();}
function ActiveElement()
{
var obj;
obj=(window.event)?((event.target)?event.target:(event.srcElement)?event.srcElement:null):document.activeElement;
alert(obj); // returns body element
}
</script>
</head>
<body>
<button onclick="MainElement()"></button>
</body>
</html>
谢谢。
把你的HTML改成:
<button onclick="MainElement(event)">Button</button>
和JavaScript作为:
function MainElement(event) {
ActiveElement(event);
}
function ActiveElement(event) {
event = event || window.event
alert (event.target); //The button HTMLElement
alert (event.target.tagName); //BUTTON
}
一些注意事项:
- 在IE中,事件对象完全通过显式对象
window.event
来访问。 - 在Firefox中,通过将传递一个事件参数到相关的事件处理函数来访问事件对象。
相关文章:
- 节点导出返回一个空对象
- ES6构造函数返回基类的实例
- 监视函数从服务返回不起作用,但作用域函数起作用
- 控制台返回var不是't定义,但它是
- 从函数返回角度承诺
- Javascript返回值只在循环中返回一次
- 从控制器返回后Ajax启动事件激发
- CKFinder 3为所选文件返回错误的URL
- Jest - querySelector('html, body') 返回奇怪的对象
- NodeJS:zlib.gunzip(body)错误地返回“undefined”
- document.activeElement 在 onblur 处理程序中返回 body
- document.body.style.zoom 返回空字符串
- document.body.style.marginTop 在 JS 中返回空白字符串
- document.body.innerHTML只返回最后一个大小写
- scrollTop为javascript中的所有文档元素返回0,但滚动事件在body标记上触发
- Express和Body Parser未返回值
- $('body').offset().top总是返回8,即使页面上没有其他内容
- 文档.Body返回帧体
- 在mac osx的firefox浏览器中.当点击按钮时,Activeelement返回body而不是button元素
- 如何过滤body html从ajax返回的数据