- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建非常基本的框架,用于使用 javascript 将元素添加到 DOM,所以我从这里开始:
function newElement(tag, id, className, innerHtml) {}
一切都很好,直到 className 属性变得过于重复和困惑,而且我在某些位置还需要某些类。所以我基本上想自动将 CSS 类分配给我的元素。我想到有 Map 对象,带有类/id 的键,值作为字符串/数组,所以我最终像这样:
function newElement(parent, tag, id, innerHtml) {
var e = document.createElement(tag);
var testedAttributes = [parent.id, parent.className, id];
for (var key of testedAttributes) {
if app.classMap.has(key) {
//check if app.classMap.get(key) is array
//assign className by index
//else assign by value
}
..
return e;
}
这样可以吗,或者我应该采取更好的方法来添加元素?比如,评估添加(事件)的类?
最佳答案
不要将创建元素的实用函数与将类放在某些事物上的应用程序逻辑混合在一起。相反,我建议为每个父元素编写一个 add
函数,并将预期的类放在通常创建的元素上,然后将它们附加到 DOM 的特定位置。
function newElement(tag, attributes, children) { … }
function addItem(element) {
element.classList.add("item");
app.itemParent.appendChild(element);
}
关于javascript - 自动将类分配给新元素(使用父元素),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51653898/
我正在用 Java 编写代码,并且使用 Vaadin 8 扩展。 我有一个 Vaadin 组合盒,效果很好。但我不仅想从组合框中选择项目,还想选择书面输入。这意味着我想使用组合框作为下拉菜单以及文本编
我正在尝试将 AJAX 添加到 JQuery ListView 中并呈黄色闪烁,但我似乎无法使其正常工作。谁能指出我正确的方向? http://jsfiddle.net/zFybm/ 最佳答案 根据
我有这个样式表: .pixel{ position: absolute; height: 10px; width: 10px; background-color: #f
这是我用来将新行推送到容器的一行代码: this.$el.append(new ItemView(item).render().el); 其中item是Backbone.js model,render
我正在尝试在 anguar.js 中制作一些测试应用程序,但遇到了问题。我的 js 文件包含: live = angular.module('live',[]); live.controller('p
如何绑定(bind)页面加载后创建的新元素? 我有这样的东西 system = function() { this.hello = function() { alert
html5 新元素(页眉、导航、页脚等)在 IE 中不工作 最佳答案 您需要包含 HTML5 shiv 脚本以允许在旧版 IE 浏览器中设置 HTML5 元素的样式:http://code.googl
我是一名优秀的程序员,十分优秀!