PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   七嘴八舌異言堂 (https://www.pcdvd.com.tw/forumdisplay.php?f=12)
-   -   [問題]Javascript function 呼叫與click事件問題 (https://www.pcdvd.com.tw/showthread.php?t=1017289)

hscyui 2013-07-02 12:58 AM

[問題]Javascript function 呼叫與click事件問題
 
首先這只是小弟在練習HTML5 Canvas的時候想在畫好的圖樣上做一個簡單的
onclick 的event。
程式碼大約如下:
js:
--------------------------------------------------------------------------------------------
var canvas ;

function draw()
{
canvas = document.getElementById("canvas1");
if(canvas.getContext)
{
var cvs = canvas.getContext("2d");
cvs.beginPath();
cvs.moveTo(150,20);
cvs.lineTo(130,120);
cvs.lineTo(220,60);
cvs.lineTo(190,40);
cvs.lineTo(130,120);
cvs.lineTo(180,30);

cvs.closePath();
cvs.fillStyle="#ee8888";
cvs.fill();
}

canvas.addEventListener('click',clickrp,false);
}

function clickrp()
{
alert("hellow world!");
}
--------------------------------------------------------------------------------------

HTML部份為:
<body onload="draw()">
<canvas id="canvas1" width="300" height="300">無法顯示。</canvas>
</body>
--------------------------------------------------------------------------------------------------------------

發現在JS的canvas.addEventListener('click',clickrp,false); 這部份如果改成canvas.addEventListener('click',clickrp(),false);
變成一讀取網頁就會執行 hello world而且點圖片也不會有反應,但是把括號拿掉就不會!變成要滑鼠去點圖才會秀出hello world
小弟對JS並不是很熟,google了好久也沒有看到有這方面的解釋,想請問版上強者這兩個有括號跟無括號到底差別在哪邊?謝謝! <(_ _)>

T磨人 2013-07-02 01:42 AM

請參考這個
http://stackoverflow.com/questions/...on-as-parameter


所有的時間均為GMT +8。 現在的時間是12:20 AM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。