草庐IT

查找HTML元素

全部标签

javascript - 如何在 JS 中使用递归在嵌套数组中查找对象

考虑以下深度嵌套数组:constarray=[{id:1,name:"bla",children:[{id:23,name:"bla",children:[{id:88,name:"bla"},{id:99,name:"bla"}]},{id:43,name:"bla"},{id:45,name:"bla",children:[{id:43,name:"bla"},{id:46,name:"bla"}]}]},{id:12,name:"bla",children:[{id:232,name:"bla",children:[{id:848,name:"bla"},{id:959,name

javascript - 我希望切换元素的可见性 : should I start with class ="..." or style ="..."?

如果我在网页上有一个元素,我希望使用javascript显示和隐藏相当多的元素,将其设置为初始不可见的最合适方法是什么?...或...在大多数情况下,使用class="..."优于style="...",但我不认为它最适合这个案例。从语义上讲,我的元素不是隐藏元素,它只是一个将在页面首次加载时开始隐藏的元素。当我使用jQuery的show()和hide()方法时,这意味着它通常会处于这种状态:.....这对我来说显然是无稽之谈。另一方面,使用内联style="display:none;"感觉有点笨拙和硬编码。我知道这两种方法都可以完美运行并且用户永远不会变得更聪明,但是哪种模式违反设计

javascript - 如何计算两个元素之间的宽度?

我需要计算两个元素之间的宽度,但我不确定该怎么做。假设我有以下内容:123我如何计算1和3之间的距离(答案是20像素)?宽度可以像列表项的数量一样可变?(我使用的是Prototype框架)谢谢 最佳答案 如果你指的是两个元素之间的水平距离,你需要左边元素的右上角坐标和右边元素的左上角坐标之间的差值。元素的右上角坐标就是左上角坐标加上它的宽度,如Pekka的回答中给出的那样。要获取元素的左上角位置,可以使用javascript方法offsetLeft()。这将返回元素与其父元素之间x维度的偏移量。您迭代DOM树,添加连续的offset

javascript - 在 NicEdit 所见即所得中插入 HTML

如何在NicEdit创建的div中的光标位置插入文本/代码?我已尝试阅读文档并创建自己的插件,但我希望它在没有工具栏(模态窗口)的情况下工作 最佳答案 这是一个快速解决方案,仅在Firefox中测试过。但它可以工作并且应该适用于IE和其他浏览器。functioninsertAtCursor(editor,value){vareditor=nicEditors.findEditor(editor);varrange=editor.getRng();vareditorField=editor.selElm();editorField.n

javascript - 位置固定和宽度 100% 元素覆盖 IE 中的垂直滚动条

我有一个宽度为100%且位置固定在页面顶部的div。当html需要垂直滚动时,它会覆盖IE中的垂直滚动条。我该怎么做才能避免这种情况(我无法更改位置固定位)?我可以检测页面是否需要垂直滚动onload/resize并使用jQuery更改静态div的宽度吗?或完全通过CSS解决吗? 最佳答案 发现问题:我不小心将overflow:auto附加到body标签上,而它只适用于html标签。 关于javascript-位置固定和宽度100%元素覆盖IE中的垂直滚动条,我们在StackOverfl

javascript - 在 Canvas HTML 上重绘大量对象

有没有一种快速有效的方法可以在canvas中移动大量对象?基本上,如果有大约1000个对象,并且我想一次移动所有对象以模拟滚动,则通过调用drawImage()1000多次来重绘每个对象会非常慢。有没有办法优化这个?我有一个问题的示例链接(而且只有100个对象):http://craftyjs.com/isometric/ 最佳答案 由于canvas不提供快速低级位图复制,因此很难在多个图层中执行操作,例如一次滚动整个背景然后只渲染边缘。那你能做什么?简而言之,什么都没有。尤其是在滚动时,当你有一个或多或少的静态背景时,你肯定可以用

javascript - jQuery - 在 load() 之后向元素添加功能

我有一些代码可以从另一个文件加载一些html,它可以正常工作。但是我很难从这个新加载的数据中访问元素。我有这个代码:varwidgetSettings=$("").addClass("widgetsettings").load('dashboard/chart-settings-form.php#editChartForm');widgetSettings.appendTo(widget.element);//sofarsogood...widget.element.find('.date').each(function(i){$(this).datetimepicker();//th

javascript - 确定事件冒泡通过的元素

给定一个像这样的简化文档:如果我单击#theInput,单击事件将冒泡到#innerDiv,然后是#outerDiv。我想做的是在#outerDiv上放置一个处理程序来监听这些点击,然后检查“气泡链”以查看哪些元素之前收到了相同的点击事件。因此,例如,单击#theInput#outerDiv中的处理程序会给我[#outerDiv,#innerDiv,#theInput]。如果我在#theInput外部单击,但仍在#innerDiv内部,那么结果将是[#outerDiv,#innerDiv]需要澄清的是,实际文档并不像这样简单,每个级别可能有任意数量的子级或兄弟级。另外,当我提到#the

javascript - addEventListener 如何影响 DOM 元素的 onclick 属性?

element.onclick=function(){alert(1);}alert(element.onclick);上面的代码会输出function(){alert(1);}然后我继续执行下面的代码:element.addEventListener('click',function(){alert(2);},false);alert(element.onclick);输出仍然是function(){alert(1);}事实上,现在点击元素时,代码addEventListener('click',function(){alert(2);},false);有效,这意味着新函数alert

javascript - HTMl+SVG+JavaScript : change text at runtime?

我准备将一些基于Flash的应用程序迁移到HTML+JavaScript+SVG(单一目标渲染引擎是Webkit)。我对SVG完全陌生,我想知道我是否可以使用SVG作为模板图像来填充屏幕并从HTML页面中嵌入的JavaScript代码动态更改包含的文本。我想做的是:在Inkscape中绘制页面的基本结构(带有一些图形和文本占位符),然后仅在HTML页面中显示SVG并通过JavaScript填充文本占位符。我可以通过在背景中显示静态SVG图像并在其顶部放置一些绝对定位的DIV来显示文本来获得相同的结果,但是我'我想在Inkscape中设计文本标签的位置、大小和样式。这能做到吗?怎么办?我