我正在尝试使用主干、把手、下划线和 jQuery 来计算表是否更宽,然后是容器 div。问题是来自 jQuery 的 .width() 函数返回一个百分比而不是像素。
我已经阅读了一些关于此的帖子,例如jQuery width() 没有在生成内容的 div 上返回正确的值,其中声明未附加到 html 文档但仍将获得 css 宽度的元素。这是有道理的,该表是从数据库中检索的,并且它具有百分比的 CSS 宽度,这是我无法控制的。
...
var MyView = Backbone.View.extend({
template: Handlebars.compile(myTemplate),
tagName: 'div',
id: 'my-doc-container',
headerTag: 'h2',
options: null,
initialize: function(options) {
this.options = options;
},
setModel: function(parentModelOptions) {
this.model = new MyDocModel(parentModelOptions);
...
this.render();
},
render: function() {
this.$el.html(this.template(this.model.toJSON()));
this._adaptContent();
return this;
},
_adaptContent: function() {
var tables = $(this.$el).find('table');
...
_.each(tables, function(table) {
$(table).wrap('<div class="tablewrapper"/>');
alert($table).width());
}, this);
}
...
}
})
所以我的问题是,是否有人对我如何能够从这些框架中计算表格的宽度有任何建议?