使用onmousedown
和onmouseup
事件。
在onmousedown
開始一個時間間隔並停止在onmouseup
。
下面是使用jQuery的一個小例子:
HTML:
<button class="zoomButton" data-zoom="out">Zoom Out</button>
<button class="zoomButton" data-zoom="in">Zoom In</button>
的JavaScript:
var zoomIntervals = {};
$('.zoomButton').on('mousedown', function() {
var mode = $(this).data('zoom');
zoomIntervals[mode] = setInterval(function() {
// here you perform your action.
// check if mode == 'in' or mode == 'out' to determine if
// the user is zooming in or out
}, 100);
}).on('mouseup', function() {
var mode = $(this).data('zoom');
clearInterval(zoomIntervals[mode]);
del zoomIntervals[mode];
});
如果不(要)使用jQuery,使用addEventListener()
註冊事件並直接訪問數據屬性(與舊版瀏覽器不兼容)或使用例如ID屬性來標識按鈕。
感謝您的回答。 – Rewind 2012-04-21 16:10:46