2012-12-27 238 views
3

我的網站建立在HTML5,CSS3和Jquery-moblie ..從另一個彈出窗口打開一個彈出窗口

我使用Jquery-mobile的彈出窗口。

在一個彈出窗口中,我有一個按鈕,當按下時我想當前彈出窗口將關閉,另一個將打開。

我試着這樣說:

彈出窗口:

<div id="MyFirstPopup" data-role="popup" data-theme="a" data-overlay-theme="a" class="ui-content"> 
     <a data-role="button" data-transition="none" data-theme="b" 
      onclick="ShowSecond();" data-icon="forward" data-iconpos="left" > 
     </a> 
    </div> 

    <div id="MySecondPopup" data-role="popup" data-theme="a" data-overlay-theme="a" class="ui-content"> 
    ... 
    </div> 

JS:

function ShowSecond() 
{ 
    $('#MyFirstPopup').popup('close'); 
    $('#MySecondPopup').popup('open'); 
} 

它沒有工作。

有沒有人有解決方案?

+2

''功能ShowSecond(){ $( '#MyFirstPopup')彈出( '親密')。 $('#MySecondPopup')。popup('open'); ''在ID前使用#。 – Turcia

+0

在我的網站上我使用#,只需通過編輯該問題已被刪除..我再次編輯該問題 –

+0

你會得到任何錯誤? –

回答

2

首先不要使用onclick =「ShowSecond();」直接在一個標籤上。

我創造了你的工作示例:http://jsfiddle.net/Gajotres/8Arrt/

添加click事件是這樣的:

$('#popup-button').live('click', function(e) { 
    setTimeout(function(){$('#MySecondPopup').popup('open');},500) 
    $('#MyFirstPopup').popup('close'); 
}); 

或使用。對(如果您正在使用新的jQuery庫無法打開新的彈出窗口,除非。舊的接近,但你也不能現在打開事件關閉最後一個,需要這樣的setTimeout功能彈出設置任何你需要超時/想

1

試試這個:。

<div id="MyFirstPopup" data-role="popup" data-theme="a" data-overlay-theme="a" class="ui-content"> 
    <a id="btOpenSecPopup" data-role="button" data-transition="none" data-theme="b" 
     onclick="ShowSecond();" data-icon="forward" data-iconpos="left" > 
    </a> 
</div> 

<div id="MySecondPopup" data-role="popup" data-theme="a" data-overlay-theme="a" class="ui-content"> 
... 
</div> 

你的js文件

$('#btOpenSecPopup').live('click', function(e) { 
    $('#MyFirstPopup').popup('close'); 
    $('#MySecondPopup').popup('open'); 
} 
相關問題