2015-05-12 2 views
1

Я читал много дискуссий, но до сих пор не понимаю мою проблему. Все, что я хочу, это отключить кнопку, щелкнув по ней. Это пример приложения, в котором я хочу, чтобы кнопки click/tap events работали.Phonegap JQuery Мобильные события не работают

Руководитель:

<meta http-equiv="Content-Security-Policy" 
     content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *"> 
<meta name="format-detection" content="telephone=no"> 
<meta name="msapplication-tap-highlight" content="no"> 
<meta name="viewport" 
     content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width"> 
<link rel="stylesheet" type="text/css" href="css/index.css"> 
<title>Hello World</title> 


<link rel="stylesheet" href="./jqm/jquery.mobile-1.4.5.min.css"> 
<script src="./jq/jquery-1.11.3.min.js"></script> 
<script src="./jqm/jquery.mobile-1.4.5.min.js"></script> 

тела:

<div data-role="page" id="pageone"> 
<div data-role="header"> 
    <h1>Welcome To My Homepage</h1> 
</div> 

<div data-role="main" class="ui-content"> 
    <p>Click on the link to see what data-transition="none" does.</p> 
    <a href="#pagetwo" data-transition="none">Go to Page Two (no effect added)</a> 
</div> 

<button id="btn1" class="ui-btn">Button</button> 
<button id="btn2" class="ui-btn">Button2</button>  

<div data-role="footer"> 
    <h1>Footer Text</h1> 
</div> 

srcipt, который идет перед закрытием тега тела. Я попытался поместить его внутрь конца головки также:

$(document).on("pageinit", "#pageone", function() { 

    $("#btn2").on("tap", function(e) { 
     $('#btn2').button({disabled: true}); 
    }); 
}); 

События работают в браузере настольного компьютера, но когда я запускаю эмулятор - события не работают все.

ответ

0

Виджет кнопки jQM предназначен для <INPUT> элементов. В этом случае вы можете использовать метод disable:

<input id="btn3" type="button" value="Button3" /> 

$("#btn3").on("tap", function (e) { 
    $('#btn3').button("disable"); 
}); 

В случае <BUTTON> элементов, как ваши, просто использовать регулярные JQuery установить отключенную опору кнопки:

$("#btn2").on("tap", function (e) { 
    $('#btn2').prop("disabled", true); 
}); 

Работа DEMO

Смежные вопросы