我创建了一个函数来记住表格单元格的调整宽度和高度。当我返回页面时,jquery 将此调整大小应用于所有单元格。我该如何将其仅应用于最初调整大小的 td?
您将在演示中看到,如果调整单元格大小并重新加载,宽度和高度将应用于所有单元格。
$(document).ready(function(){
if(typeof($.cookie('height')!='undefined'))
{
$("td").height($.cookie("height"));
$("td").width($.cookie("width"));
}
$( "td" ).resizable({
stop: function(event, ui) {
var width = ui.size.width;
var height = ui.size.height;
$.cookie("height",height);
$.cookie("width",width);
}
});
});
最佳答案
我在这个jsFiddle中添加了一个答案。
JSFIDDLE - EXAMPLE
您需要有两个额外的cookie
来记住最后调整大小的单元格
的行
和列
计数。当页面加载时,我们通过[row, col]
获取cell
并应用width
和height
。
这里,我为列
应用了宽度
,为行应用了高度
。请记住,如果更改一个单元格
的行高度
,则整个行高度将会增加。 这就是预期的表格行为。
这只会记住最后一个单元格属性。
如果你想一一记住所有单元格属性,你需要使用
另一种机制,例如支持数组的 localstorage
。
关于javascript - 可调整大小的 jQuery 函数会记住 cookie 的宽度,但适用于所有单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46367997/