gpt4 book ai didi

jquery-mobile - JQuery Mobile slider 不工作

转载 作者:行者123 更新时间:2023-12-04 06:22:32 28 4
gpt4 key购买 nike

我正在尝试让 slider 与 JQuery Mobile 1.4.2 一起工作。

我想做的是使用 slidestop 事件来更新别处的值。但是,不会触发 slidestop 事件。我创建了一个测试文件并在 Safari 和 Firefox 中进行了测试。当我停止滑动 slider 时没有任何反应。有人可以告诉我我错过了什么教程吗?

<html>
<head>
<link rel="stylesheet" type="text/css" href="css/jquery.mobile.css" />
<script src="js/jquery.min.js">
</script>
<script src="js/jquery.mobile.js">
</script>

<title>Concertzender</title>
</head>
<body>
<label for="slider-step">Input slider:</label>
<input type="range" name="slider-step" id="slider-step" value="150" min="0" max="500" step="10" />
</body>
<script>
$( "#slider-step" ).on('slidestop',function( event ) { alert("slidestop event fired"); });
</script>
</html>

编辑:我尝试了下面建议的答案,但我的设置比上面的示例稍微复杂一些,因此没有成功。

我试图避免使用 JQuery Mobile 的页面结构,而只将它用于 slider 。问题是,当我切换到另一个页面时,不存在 pagecreate 或 pageshow,所以我等不及这些事件了。我想要的是创建一个新的 slider (或者更确切地说用另一个已经存在的 div 替换一个空的 div,然后更改以前空的 div 的输入 ID 的 ID。所以我剩下的是一个独特的新 ID'ed 输入(与相应的标签)。

我将如何着手使用 slidestop 与新 slider 交互?我试过这个:

$('newslider').slider();
$('newslider').on('slidestop', function(){alert("slidestop");});

但这给了我 Safari 中的两个 slider ,其中一个 slider 停止,另一个没有响应。然而,在 iOS 中,我得到一个滑动的 slider ,但不会触发 slidestop 事件。省略第一行会让我在 Safari 中出现无响应的 slider ,而在 iOS 中不会触发 slider 。

所以我的问题很简单:如何在不使用 JQuery Mobile 页面的情况下为新 slider 启用 slidestop 事件?

最佳答案

您需要在 pagecreate 中包装所有事件/绑定(bind)。

$(document).on("pagecreate", function () {
$("#slider-step").on('slidestop', function (event) {
console.log("slidestop event fired");
});
});

Demo

关于jquery-mobile - JQuery Mobile slider 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22443749/

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