我有一个Javascript代码,用于将省略号放在商店网格上以获取标题和说明。它可以在Chrome,Mozilla和Safari中运行。但是,有时在Internet Explorer(在11.0.22上测试),这个特定页面停止响应加载几秒钟和大多数时间,我在窗口上没有响应。如果我删除了这部分代码,那么问题就不存在了。
我的代码上的某些内容会影响性能,我应该更改什么来解决它?
Javascript代码:
function dotify(element) {
var limit = element.offsetTop + element.offsetHeight;
var dots = document.createElement('span');
if (element['data-inner'])
element.innerHTML = element['data-inner'];
else
element['data-inner'] = element.innerHTML;
dots.appendChild(document.createTextNode('...'));
element.style.overflow = 'hidden';
element.appendChild(dots);
while (dots.offsetTop + dots.offsetHeight > limit) {
dots.previousSibling.data = dots.previousSibling.data
.replace(/\W*\w+\W*$/, '')
}
}
jQuery(".product-description").each(function() {
if (this.scrollHeight > this.clientHeight ) {
dotify(this);
}
});
jQuery(".product-title-grid").each(function() {
if (this.scrollHeight > this.clientHeight ) {
dotify(this);
}
});