gpt4 book ai didi

jquery - 在 jquery-mobile 中计算(不是 CSS)width()

转载 作者:行者123 更新时间:2023-12-01 04:49:22 24 4
gpt4 key购买 nike

我有一个 div id="XYZ",CSS 指定宽度:37%;

然后我希望使用此 div 的 px 宽度来设置其他宽度,但我只能访问给定的 css% 值,而不能访问 DOM 中计算出的 div 的 px 宽度。我做错了什么?

$( document ).on( "pagecreate", "#page", function( event ) {

var divWidth = $("#XYZ").width();
console.log('div XYZ width is ' + divWidth);

});

它输出 37。这是 css % 值,但是 jquery width() 应该给我计算出的宽度(以 px 为单位),不应该吗?

我在想,也许问题是我在“pagecreate”处询问(与已弃用的“pageinit”结果相同)。

如何获得 div 的计算宽度?

最佳答案

使用pagecreate检索实际的.width().height().offest()等,不会返回计算值,因为页面和其中的元素都被隐藏了。

要检索此类数据,您需要在上一页和下一页之间的转换完成时使用 pagecontainertransition,或者在上一页完全隐藏时使用 pagecontainerhide,或者 pagecontainershow 当下一页完全可见时。

但是请注意,这些事件不能附加到特定页面。从 jQM 1.4 开始,“页面事件”被替换为“PageContainer Events”。因此, - 不幸的是 - 你应该使用if语句或switch/case

$( document ).on( "pagecontainershow" , function( event, ui ) {
var divWidth = $( "#XYZ" ).width();
console.log('div XYZ width is ' + divWidth);
});

关于jquery - 在 jquery-mobile 中计算(不是 CSS)width(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23309480/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com