2017-02-12 59 views
0

EDITED: 我有一個功能,下載文件和事件來聽那個開始下載重複的下載 - 科爾多瓦/ Framework7

事件點擊:

$$('button').on('click', function() {         
    var media = $$(this).attr('data-url');    
    Download(media); 
    } 
}); 

「下載」是一個功能延遲完成...當它運行,如果我點擊其他按鈕來獲得它的值,「媒體」變量將獲得第一個按鈕的值 - 正在處理「下載」功能

何我解決它嗎?

感謝

+0

必須顯示該功能的問題代碼 – charlietfl

回答

1

我解決這個問題是這樣的:

我的頁面有幾個按鈕,我認爲這是造成衝突。所以,我創建了一個帶有鏈接部分的「動態類」,並將一個事件鏈接到它們,而不是按鈕。

//My file is in this link. The absolute link to my jpg file will be catched in JSON inside here... 
    var link = 'https://www.myserver1.com/f/wPAU322jT36/'; 
    var id_link_1 = link.substring(28,100); //-> wPAU322jT36/ 
    var id_link = id_link_1.replace('/',''); //-> wPAU322jT36 

於是,我把它作爲一個類HTML:

//data-url is my .jpg file catched in JSON in link above 
    var html = '<button data-url="https://www.myserver1.com/myfie.jpg" class="btn btn-primary btn-lg btn-block '+id_link+'"'; 

所以,我把它叫做一個事件

$$('.'+id_link+'').on('click', function() {         
    var media = $$(this).attr('data-url');    
    Download(media); 
    } 
}); 

所以我就被稱爲獨特的類中。現在,它的工作:)

0

我有同樣的問題與你之前喜歡這個。然後我解決了它們。

試着把.off('click')放在.on('click')之前,它會解決你的問題。

所以這將是這樣的:

$$('button').off('click').on('click', function() {         
    var media = $$(this).attr('data-url');    
    Download(media); 
}); 

OR

添加off('click')自己的函數中底。

$$('button').on('click', function() {         
    var media = $$(this).attr('data-url');    
    Download(media); 
    $$(this).off('click'); 
}); 
+0

你的解決方案是好的...但沒有適合我...我解決其他方式...見上面:) –