我在IE11上面临兼容性问题。代码工作正常,直到IE8,之后它没有。我们正在使用自己的框架工作。但我不确定它是否与框架或任何其他问题有关。 我在控制台中遇到的一个错误是: InvalidCharacterError。 代码段:
function makeScrollableTable(tbl,scrollFooter,height){
var c, pNode, hdr, ftr, wrapper, rect;
if (typeof tbl == 'string') tbl = document.getElementById(tbl);
pNode = tbl.parentNode;
fixTableWidth(tbl);
c = container.length;
container[c] = document.createElement('<SPAN style="height: 100; overflow: auto;">'); //>>> here only its throwing an error.
}
答案 0 :(得分:0)
您只需使用标记名称来创建dom元素:
var span = document.createElement('SPAN');
span.style.height = '100px';
span.style.overflow = 'auto';
container[c] = span;
答案 1 :(得分:0)
您可以创建一个使用选项CSS样式规则构建元素的函数。
function createEl(tagName, options) {
options = options || {};
let css = options.css || {},
el = document.createElement(tagName);
for (let prop in css) el.style[prop] = css[prop];
return el;
}
container[c] = createEl('SPAN', { css : { height: 100, overflow: 'auto' } });
高级版
function createEl(tagName, options) {
options = options || {};
let attrs = options.attrs || {},
css = options.css || {},
el = document.createElement(tagName);
for (let prop in css) el.style[prop] = css[prop];
for (let name in attrs) el.setAttribute(name, attrs[name]);
if (options.text !== undefined) el.innerHTML = options.text;
return el;
}
let spanEl = createEl('SPAN', {
attrs : {
class : 'foo'
},
css : {
height : '100px',
overflow : 'auto',
background : 'DarkGrey',
color : 'White'
},
text : 'Hello World'
});
document.body.appendChild(spanEl);
&#13;
.foo { padding: 0.5em; }
&#13;