- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在我的应用程序的客户端使用 javascript,我需要根据 id、类和标记名获取元素,我使用以下代码使用 id
获取元素.
HTML:
<!Doctype>
<html>
<head>
<script>
(function (tag,fp,n) {
var d = document;
a = d.createElement(tag), m = d.getElementsByTagName(tag)[0];
a.async = 1;
a.src = fp;
m.parentNode.insertBefore(a, m)
})('script', 'cs.js', 'cs');
</script>
</head>
<body>
<div id="id">click me</div>
</body>
</html>
javascript(cs.js):
;(function(w, d) {
var util = {
getElements : function(selector) {
var result = [];
var hashIndex = selector.indexOf("#");
var dotIndex = selector.indexOf(".");
if(hashIndex > -1){
selector = selector.substring(hashIndex+1);
var domElem = d.getElementById(selector);
console.log(domElem);
if(domElem !=null){
result.push(domElem);
}
}
else if(dotIndex > -1){
selector = selector.substring(dotIndex+1);
var domElem = d.getElementsByClassName(selector);
if(domElem !=null){
result = domElem;
}
}else{
var domElem = d.getElementsByTagName(selector);
if(domElem !=null){
result = domElem;
}
}
return result;
}
};
console.log(util.getElements("#id"));
})(window, document);
它在 chrome、firefox 中工作正常,但在 opera 中它给出了 null
.
Browser Info:
Opera/9.80 (X11; Linux x86_64) Presto/2.12.388 版本/12.15
这个问题有什么解决方法吗?
最佳答案
你的 <script>
元素出现在 <div>
之前您要选择的元素。
使用 async
不保证 DOM Ready 事件会在脚本运行之前触发。
移动脚本,使其出现在文档的后面,或将其绑定(bind)到事件处理程序。
关于javascript - getElementById 在歌剧 12.15 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16352590/
我正在尝试获取全屏模式的状态。脚本在除 Opera 之外的所有浏览器中都可以正常工作。如何解决? $(document).bind('webkitfullscreenchange mozfullscr
在我的页面上,我有一个具有以下 CSS 规则的元素: .pointer { position: fixed; background-repeat: no-repeat; bac
在这里做了一个小的动画实验菜单 http://jsfiddle.net/NWvSQ/1/ 在 Opera 中,当您将鼠标悬停在元素外时,边框半径会立即变回(元素在一秒钟内变为正方形),而不是动画。在
我是第一次在这个网站上写作,因为我对 css3 exactly box-shadow 有很大的问题,所以我从头开始:)我制作了网站并且在我更改所有图形之前它运行良好。我做了 box-shadow,现在
今天我决定通过用户脚本将 html5 数据列表添加到某些输入。 Here's代码。问题是未添加 list 属性。如果我将它更改为不同于 list 的任何内容,例如 lst - 它就在那里。 应该是这样
我一直忙于创建我的网站,但是在测试我在 Opera 上进行中的主页的过程中,我注意到它添加了一个水平滚动条。从我的页面中删除部分后,我注意到如果我只留下一个带有 ID 功能的 div,问题仍然会发生。
我在我的 Ubuntu 桌面上使用 Chromium/Google Chrome 浏览器。现在出于某些测试原因,我需要从浏览器而不是网站服务器 javascript 代码运行此 javascript。
看起来 Opera/Mac 不允许您在用户按下 ⌘S 时覆盖操作(当然默认是保存页面)。我发现我的旧脚本在其中不起作用。它通过 Ajax 将表单内容保存到服务器。 这是一个 onkey* 处理程序:
然而,有一些工具可以同时为所有主要浏览器制作一个插件,参见:crossrider、kangoextensions 和 http://besttoolbars.net/products/addon_fr
我使用 jquery blockUI plugin (v2)并在用户提交表单时调用 $.blockUI。网页顺利淡出,出现新页面。没关系。但是,当用户在 Opera/Fire Fox 中按下“后退”按
我用 float:left; 在 div 中用 position:relative;margin-bottom:15px; 得到 anchor 。 出于某种原因,底部边距不适用,当我测试它时,我认为问
我是一名优秀的程序员,十分优秀!