网站搜索
我用 jQuery 添加了一个 DOM 元素(一个链接)。我可以在 Firebug 中看到这个元素,但不知为什么 Selenium 找不到它。发生了什么?
注意:这里没有涉及 AJAX,所以 DOM 元素几乎会立即被添加。
== 编辑 ==
这是一些代码(使用 jQuery),用于在文档末尾添加一个链接:
$element = $("<a id="foo" href="#"></a>"); $element.appendTo($("body"));我正在使用 Capybara(配合 Selenium)来查找链接并点击它,如下所示:
find("#foo").click在我开始用 jQuery 向 DOM 添加元素之前,我在使用 Capybara 或 Selenium 时没有遇到任何问题。
尝试在你的测试代
阅读更多 →
我正在使用 Range 来操作选定的文本。我想计算从某人开始选择文本的位置到他们完成选择的位置的高度。
我尝试在所选范围的开始和结束处添加一个跨度,这样我可以准确地计算出高度,但它会改变 DOM,并阻止我进行一些其他的范围操作,比如高亮之前选中的文本。
我也尝试过收集鼠标按下和鼠标抬起的位置,但我需要从选中文本的顶部到释放选择位置的文本底部的准确高度,而情况并非总是如此。
所以我在想是否有办法在不改变 DOM 的情况下计算文本选择的高度?
阅读更多 →
如果我在同一个域名下打开了两个(或更多)标签页,有没有一种简单的方法来感知另一个标签页的存在(以便控制我进行的计算)?我了解有一个 window.open() 函数,但我并不是从一个窗口打开另一个窗口。相反,想象一下用户在 mydomain.com 打开了两个标签页。
我已经开始编写一些使用 HTML5 本地存储的代码,我会定期留下消息并检查消息,但这似乎有点复杂。
那是一个有趣的问题。
我们可以尝试那些 API:postMessage, sessionStorage, localSt
阅读更多 →
尝试创建一个内联编辑表单。我有一个表单看起来是这样的:
var editPic = "<img src='https://s3.amazonaws.com/bzimages/pencil.png' alt='edit' height='24' width='24' style='margin-left: 10px;'/>"; var submitPic = "<img id='submitPic' src='https://s3.amazonaws.com/bzimages/submitPic.png' alt='edit' height='24' width='24'/>"; Ext.d 阅读更多 →我正在尝试修改 Three.js 包中提供的示例文件 canvas_geometry_cube.html,并将立方体的每个面更改为显示 HTML 页面/DOM 元素(最好是 DOM 元素)。我看了一下 ParticleDOMMaterial,但我不知道如何使用它,也不清楚它的作用。有人能帮忙吗?
为了根据 Three.js 最近的一些改进更新这个老问题,并为未来的读者提供参考
Three.js 现在实际上支持 CSS3D 作为渲染输出,因此您可以使用 CSS 3D 变换来操纵 HTML 页面/DOM 元素。
例如,请参见这里:http://mrdoob.github.io/three.js/examples/css3d_periodictable.html
DOMRenderer 不是一个完整的 3D 渲染器,它只能
阅读更多 →
我使用这个简单的技巧在 jQuery 中获取原生 DOM 元素:
var el = $('#myid'); var native = el[0]; //or el.get(0);我如何在 YUI 3 中做到这一点?例如,我想使用 getElementsByName DOM 方法,而 YUI 3 不支持该方法。
我在使 Respond 的 CDN/X-Domain 设置工作时遇到了困难。
我一开始是从 CDN 提供所有资源:
<link rel="stylesheet" href="http://cdn.example.com/css/main.css?2013012401"> <script src="http://cdn.example.com/js/modernizr-2.6.2.min.js?2013012401"></script> <script src="http://cdn.example.com/js/respond.min.js?2013012401"></script>理论上这应该可行,因为所有资源都来自同一域。不过 IE8 并没有像应有的那样支持媒体查询。因此我调查了 Respond 的 CDN/跨域设置,并将我的 <head> 部分修改为如下内容:
<link 阅读更多 →
我想要实现的事情是通过传递一个大的 HTML 字符串,使用 jQuery 操纵使用 DOM 创建的文档。请考虑以下示例:
var doctype = document.implementation.createDocumentType( 'html', '', ''); var dom = document.implementation.createDocument('', 'html', doctype); dom.documentElement.innerHTML = '<head><head><title>A ti 阅读更多 →
我在 JavaScript 上有这个函数,它在 Firefox 上可以使用,但在 Google Chrome 上不行
function sendInfo(userId, Code) { // text with all info to send to controller var values = { "token": Code, "code": userId } // POST THE CHANGE HERE TO T 阅读更多 →
我最近在网上发现了以下问题:
编写一个函数,该函数接收一个对象并将其附加到 DOM 中,使事件被缓冲直到下一个时钟周期?解释为什么这有用?
这是我的回答:
function appendElement(element) { setTimeout(function() { document.body.appendChild(element); }, 0); } 阅读更多 →