gpt4 book ai didi

javascript - 更改 jquery mobile 页面 init 上的元素

转载 作者:行者123 更新时间:2023-11-28 13:32:20 25 4
gpt4 key购买 nike

我尝试更改页面初始化上的 slider 属性:

$(document).delegate('#my-page','pageinit', InitMyPage());

function InitMyPage() {
var today = new Date();
$("#my-slider").prop({
min: 1,
max: 50
}).slider("refresh");
}

页面 init $("#my-slider") 看起来仍然未知。

当我尝试在控制台上获取它时,它看起来像这样:

$("#year-slider")
[]

我收到错误:

Uncaught TypeError: undefined is not a function

我什么时候可以更改元素(哪个事件)?

最佳答案

这段代码:

$(document).delegate('#my-page','pageinit', InitMyPage());

调用 InitMyPage 并将其返回值传递给 delegate,与 foo(bar ()) 调用 bar 并将其返回值传递给 foo

要将函数传递给 delegate,请删除其后面的 ():

$(document).delegate('#my-page','pageinit', InitMyPage);
// No () here ----------------------------------------^

And I get error:

Uncaught TypeError: undefined is not a function

When can I change the elements (which event)?

这是因为 InitMyPage 没有返回任何内容,因此调用它的结果是 undefined,该结果被传递给 delegate。稍后当事件发生时,显然 jQuery Mobile 会尝试调用 undefined (这不是一个函数,会导致错误)。我有点惊讶 jQuery Mobile 没有注意到这一点,也没有尝试调用它,但是...:-) 修复其他问题就可以解决这个问题。

关于javascript - 更改 jquery mobile 页面 init 上的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23988922/

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