2017-01-27 29 views
1

我有提交按鈕的網站,它可以被點擊,但沒有對Android(鉻)的行動。在PC鍍鉻它工作正常。不知道問題出在哪裏?輸入提交按鈕不能在Android設備上工作

<input style="display:none" type="submit" class="inline-right vytvorplakat" value="Publikovat plakát" onclick="capture();" /> 
function capture() { 
    $('#target2').html2canvas({ 
     onrendered: function (canvas) { 
      //Set hidden field's value to image data (base-64 string) 
      $('#img_val').val(canvas.toDataURL("image/png")); 
      //Submit the form manually 
      document.getElementById("myForm").submit(); 
     } 
    }); 
} 

我嘗試這樣做:(如Navjot辛格的建議),但仍是同樣的問題,只能在桌面

<input style="display:none" type="submit" class="inline-right vytvorplakat" value="Publikovat plakát" <a href="javascript:capture()"> 
+0

butto怎麼樣當它被設置爲'display:none'時,它會被點擊嗎? –

+0

有一個腳本,檢查textarea中是否有正確的輸入,如果是的話,該按鈕是可變的。它的工作原理是,PC和移動設備上的按鈕都能正確顯示,但在移動設備上點擊它無所作爲,而且在PC上它是有吸引力的。 – user7176800

+0

看看這個。 http://stackoverflow.com/questions/5453937/onclick-event-not-working-in-javascript –

回答

0

嘗試綁定事件JS爲了解決這個問題問題:)

$(".vytvorplakat").on("click" ,capture); 

我認爲這將解決您的問題 組ID到該按鈕,綁定的事件在這個ID 因爲ONCLICK不支持某些瀏覽器

HTML

<input id="testing" type="submit" class="inline-right vytvorplakat" value="Publikovat plakát" /> 

JS

$("#testing").on("click" ,capture); 

function capture() { 
    //remove this alert 
    alert("Welcom from capture"); 
    $('#target2').html2canvas({ 
    onrendered: function(canvas) { 
     //Set hidden field's value to image data (base-64 string) 
     $('#img_val').val(canvas.toDataURL("image/png")); 
     //Submit the form manually 
     document.getElementById("myForm").submit(); 
    } 
    }); 
} 
+0

是的!這工作! Thnaks很多:) – user7176800

+0

@ user7176800,這與我的回答有什麼不同?我的回答是一樣的,只有純JavaScript。我的解決方案沒有奏效? – Ionut

1

onclick已被棄用,它可能在現代瀏覽器或設備上出現意外的行爲。嘗試綁定的事件偵聽器的點擊這樣的:

document.getElementsByClassName("vytvorplakat")[0].addEventListener("click", capture); 

UPDATE

示範段:

function capture() { 
 
    console.log('test'); 
 
    //here goes your html2canvas code 
 
} 
 

 
document.getElementsByClassName("vytvorplakat")[0].addEventListener("click", capture);
<input type="submit" class="inline-right vytvorplakat" value="Publikovat plakát" />

+0

謝謝,但不知道該把它放在哪裏,它應該在「function capture()」腳本中有些什麼? – user7176800