2013-02-21 40 views
8

Trong trang web JQuery Mobile của tôi, tôi đã thêm một hộp thoại công cụ để mở khi tải trang và nó sẽ biến mất sau 5 giây . Mã của tôi cũng tương tự như sau,Chức năng bật lên công cụ di động JQuery ("close") không hoạt động trong IPhone 5

<div data-role="popup" id="popupInfo"> 
    <p>This is a completely basic popup, no options set.<p> 
    </div> 

    <script type="text/javascript"> 
$(document).live('pagechange',function(event){ 
    $('#popupInfo').popup("open") 
     setTimeout(function() { 
     $('#popupInfo').popup("close"); 
     }, 5000); 
    }); 
    </script> 

Bản cập nhật này đang làm việc tốt trong tất cả các thiết bị ngoại trừ trong IPhone 5 iOS 6. Bởi vì khi tôi cố gắng tải trang di động JQuery của mình bằng kịch bản trên trong thiết bị IPhone 5 iOS 6, nó chuyển hướng tôi đến trang trước khi đóng cửa sổ bật lên. Tôi không chắc chắn những gì tôi đã bỏ lỡ ở đây nhưng đối với tôi nó trông giống như jQuery Mobile popup ("đóng") chức năng không hỗ trợ cho IPhone 5 iOS 6.

Ngoài ra khi tải công cụ-tip sau băm thẻ phụ thêm văn bản vào URL như thế nào chúng ta có thể tránh điều này #&ui-state=dialog

thể bất cứ ai xin vui lòng cho tôi biết làm thế nào chúng ta có thể giải quyết vấn đề này?

Tôi thậm chí đã thử mã sau đây;

$(document).on('pagechange',function(event){ 
     $('#popupInfo').popup("open").delay(2000).popup("close"); 

    }); 

Nhưng điều này không làm việc ở tất cả các

+0

Bạn đã giải quyết chưa? – Omar

+0

Cảm ơn bạn đã theo đuổi tình huống này. Tôi sẽ sớm cập nhật cho bạn về điều này. –

Trả lời

14

Got nó. Thêm data-history="false" vào số popupBasic div Cửa sổ bật lên.

<!-- Button/works without it --> 
<a href="#popupBasic" data-rel="popup">Open Popup</a> 

<!-- Popup #popupBasic --> 
<div data-role="popup" id="popupBasic" data-history="false"> 
<p>This is a completely basic popup.<p> 
</div> 

JS:

<script type="text/javascript"> 

$(document).live('pagechange',function(){ 
$('#popupBasic').popup("open") 
    setTimeout(function() { 
    $('#popupBasic').popup("close"); 
    }, 5000); 
}); 

</script> 

JSfiddle: Popup

+0

Cảm ơn điều này nhưng vẫn còn vấn đề vẫn còn. Plase kiểm tra tập tin thử nghiệm của tôi với trình mô phỏng trực tuyến. Liên kết kiểm tra: ** http: //www.apartmentslanka.com/ztest_calender/zfr/index_a.html**. Liên kết trình mô phỏng trực tuyến: ** http: //iphonetester.com/** –

+0

Kiểm tra câu trả lời được cập nhật. – Omar

+0

Điều này hiện đang hoạt động tuyệt vời! và một lần nữa lớn Cảm ơn bạn. –

1

Cũng alternatively..jquery di động bao quanh cửa sổ pop-up với một div có ID = "yourpopupid-popup" Vì vậy, bạn chỉ có thể che giấu div đó

ví dụ: < div id = "cơ bản" data-role = "popup"> Tôi bật lên </div> , sau đó bạn có thể đóng nó bằng cách: $ ('# popup cơ bản '). hide();

1

Sử dụng hai chức năng ẩn() hoặc bạn có thể sử dụng đóng) chức năng (trên cách nhấn vào nút

0

tôi đã phải đối mặt với cùng một vấn đề trong việc sử dụng cửa sổ bật lên cho thanh công cụ menu (jQuery Mobile 1.2). Ví dụ:

<a href="#popupBasic" data-rel="popup">Open Popup</a> 

<!-- Popup #popupBasic --> 
<div data-role="popup" id="popupBasic" data-history="false"> 
<ul data-role="listview" data-inset="true"> 
<li><a href='item1.html'>Item1</a></li> 
</ul> 
</div> 

Mã trên không hoạt động trên iPhone 5 (nhưng hoạt động trên android, iPhone4, v.v). Nếu tôi thay đổi nó như dưới đây nó hoạt động.

<a data-ajax="false" href='item1.html'>Item1</a> 
Các vấn đề liên quan