2015-01-08 3 views
0
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
    <script src="js/html2canvas.js"></script> 
    <script src="js/canvas2image.js"></script> 

    <script> 
    function mypng(){ 
    var c=document.getElementById("picture"); 
    var dataURL = c.toDataURL("image/png"); 
    alert(dataURL); 
    } 
    </script> 


    <a id="jpeg" href="#" onclick="mypng();"> 

    <canvas id="picture"></canvas> 

아무 기능도 수행하지 않습니다.캔버스에 데이터가 작동하지 않습니다.

물론 캔버스에 이미지를 생성하고 있습니다. 나는 이미지를 마우스 오른쪽 버튼으로 클릭하고보기이 이미지를 선택하면 내가 제대로보고 base64로 URL을

+0

무슨 오류? 어떤 오류가 발생합니까? –

+0

html2canvas 및 canvas2image 란 무엇입니까? –

+0

함수가 실행되지 않으면 url과 함께 경고가 실행되지 않습니다. – metalbox

답변

0

<a id="jpeg" href="#" onclick="mypng();">

그것은 링크입니다에 인코딩, 그래서 # /가는 방지하기 위해 클릭 이벤트에 false를 반환 할 수 있습니다.

<a id="jpeg" href="#" onclick="mypng(); return false;">

는 편집 : 또한

, 당신은 <a> 태그를 닫지 마십시오.

이 시도 :

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
<script src="js/html2canvas.js"></script> 
<script src="js/canvas2image.js"></script> 

<script> 
function mypng(){ 
    var c=document.getElementById("picture"); 
    var dataURL = c.toDataURL("image/png"); 
    alert(dataURL); 
    event.preventDefault(); 
} 
</script> 


<a id="jpeg" href="#" onclick="mypng();">LINK</a> 

<canvas id="picture"></canvas> 

FIDDLE

+1

그는 함수를 사용하므로'event.preventDefault()'를 더 잘 사용합니다. –

+0

예, 동의합니다. HTML의 논리가 적 으면 적을수록 좋습니다. – kurideja

+0

@kurdeja 정확히 ... 비록 내가 OP의 질문 주석 섹션에서 이미 이벤트에 관한 것임을 알았 기 때문에 ... 나는 진짜 의심 스럽다 ... –

관련 문제