调整窗口大小时更新数据属性
Update data- attribute on window resize
我需要在div中写入一些自定义数据属性,比如:
data-100="50"
其中"100"是另一个div的高度,"50"是"height/2"。我用jQuery做过,它很有效:
function customFn() {
var customFn = $('.page-title').height();
$('#header).attr('data-' + customFn, 'customFn/2');
}
customFn();
现在我想更新窗口大小的值,所以我添加了:
$(window).resize(customFn);
但我想这不是解决方案,因为当我调整窗口大小时,函数会在div中添加具有新值的新数据属性,而不是更新现有值。
有其他解决方案吗?
不要使用attr()
更新数据,而是使用data()
function customFn() {
var customFn = $('.page-title').height();
$('#header').data(customFn, customFn/2);
}
据我所知,您试图存储两个值:height和height/2。您不应该将第一个存储在数据属性的名称中。。。而是将两者存储在一个单独的属性中,如:
function customFn() {
var height = $('.page-title').height();
$('#header').data('height', height);
$('#header').data('half-height', height/2);
}
更好的是,由于一个值依赖于另一个值(value1=value/2),您实际上只需要存储第一个值,并且可以在需要时计算第二个值。
你能试试这个吗?
$(window).resize(function() {
customFn();
});
相关文章:
- 无法更新 Kendo-grid 中的值 - 无法读取未执行的“数据”属性
- 如何获取数据属性中存在的现有JSON并更新它
- 如何使用Jquery更新数据确认属性中的消息
- 调整窗口大小时更新数据属性
- 使用数据属性通过 jquery 定位和更新变量
- AJAX 数据 - 替换 HTML 与更新值属性
- 如何在 Ajax 上更新数据属性完成
- 单击时从数据属性获取更新的值
- Html5 数据属性在 ajax 请求后未更新
- 使用从 MongoDB 获取的新数据更新对象属性
- "无法读取属性'选项'未定义的“;尝试更新数据网格时的EasyUI
- Javascript/jQuery插件问题(未更新数据属性)
- JQueryUI自动完成不会't从选择框中更新其数据属性
- 引导程序's的模态数据属性未更新
- 数据属性没有更新,onclick事件仍然在上面
- 更新数据属性对象属性值
- JQuery更新数据-属性/值
- ajax调用后更新数据属性
- jQuery setInterval持续更新数据属性
- 更新数据属性