2013-12-07 40 views
0

我用我的網站上jQuery文檔更新電腦上工作,但不能在智能手機

<span class="box"> 
     <noscript> 
     <a href="link.php"><img src="images/imagebox.png"></a> 
     </noscript> 
    </span> 

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 

    $(document).ready(function() { 

     $('span.box').html('<img src="images/imagebox.png">'); 

     $(document).on('click','span.box', function(){ 

        // rest of code 

     }); 
    }); 

以下類似的代碼,你可以看到,我建的方式,如果客戶端已啓用JavaScript,內容被替換爲沒有鏈接,所以它對客戶端來說更具有互動性,如果客戶端沒有javascript,他仍然以鏈接的方式仍然可以採取必要的行動...

雖然這個工作完美沒有任何麻煩電腦,在智能手機(至少是我的),它不工作,但我不知道爲什麼......實際上,在我的智能手機上,我看不到,也不能做任何行動就好像它不會有JavaScript,而它有...我有我的智能手機上的Android 2.1 ...

你知道任何解決方案或解決方法爲此,我可以擁有這種和必要的行動能力,即使在手機?

在此先感謝您的幫助!

編輯:我最終選擇的解決方案就像JavaScript function in href vs. onclick

回答

0

嘗試使用

$(document).on('pageinit', function(){});$(document).on('mobileinit', function(){});代替

$(document).ready(function(){});

+0

不,不要工作了,也沒有在智能手機,也沒有對計算機...:/ – Snipchain

+0

包括JQM,這將是明確的,我總是用這個。 –

+0

請看我的答案更新@Snipchain –

1

所有移動設備不處理單擊事件。應該是:

$('<img />').attr('src', 'images/imagebox.png').appendTo('span.box').bind('click touchstart', function() { 

    // handle click/touch 

}); 

也看到這個帖子一倍左右trgiggering問題在一些觸摸功能的設備: How to bind 'touchstart' and 'click' events but not respond to both?

+0

問題不是點擊,而是插入圖像...我試過了touchstart,但沒有問題是在點擊事件之前發生的...... – Snipchain

+0

編輯了我的評論..並且在您的示例中,您沒有在img標籤中結束斜槓..所以它不是有效的xhtml。 – Hardy

+0

即時通訊工作與html5,所以它是有效的......它通過W3C驗證...但如上所述,圖像需要插入之前點擊可以處理,在你的例子中,你假設圖像已經可見,而不是,這是問題...:/ – Snipchain

相關問題