jquery mobile防止默认不适用于phonegap应用程序

jquery mobile prevent default not working for phonegap app

本文关键字:适用于 phonegap 应用程序 不适用 默认 mobile jquery      更新时间:2023-09-26

我希望通过本地存储将数据传递到另一个html页面。在电话间隙中,通过URL发送数据似乎不起作用

所以我想点击点击事件,并在页面更改之前运行我的数据分配功能

但是prevent默认值不适用于列表视图。

<ul class="content"  data-role="listview" data-inset="true" data-filter="true">
<li><a href="second.html"> <img src="image.jpg" /> to go to second page</a></li>
<li><a href="second.html"> <img src="image.jpg" /> to go to second page</a></li>
<li><a href="second.html"> <img src="image.jpg" /> to go to second page</a></li>
<li><a href="second.html"> <img src="image.jpg" /> to go to second page</a></li>
 </ul>

我在这里设置了一个小提琴:

http://jsfiddle.net/prantikv/kpv42yne/1/

我的最终目标是获取单击了哪个列表视图项以及与之相关的值。通过URL获取数据似乎不起作用。

event.prventDefault()方法不起作用。。请参阅小提琴

event.prventDefault()工作正常。问题是你的代码搞砸了。首先,这不是使用jQuery选择器的方式:

$(".content li,.content a")

我相信你正在努力做到这一点:

$(".content li a")

我也不知道你在这里想做什么:

$(document).on('pagebeforeshow','index', function(){   
    alert(2);    
    $(document).on('vmousedown click', function(event){
        event.preventDefault();
        return false;
    });
});

因为单击<a>标记会导致页面更改,所以您不希望在此处阻止默认行为并保存值。所以这就是你所需要的:

$(".content li a").click(function (event) {
    event.preventDefault();
    localStorage.setItem("fileName", $("#path").val());
    console.log($("#path").val());
    window.location.href = "second.html";
});

我用叉子叉了你的小提琴:http://jsfiddle.net/theagitator/9aa4nkx3/2/