我正在尝试在 jquery 中制作一个简单的用户点击动作记录器,但遇到了一些麻烦。我希望用户单击记录按钮,然后单击记录他单击的内容。然后按停止按钮停止录制。到目前为止,我所拥有的是:
var stack = new Array();
var recordmode = false;
$('#record').click(function(){
recordmode = true;
alert('You are now in record mode');
});
$('#stop').click(function(){
recordmode = false;
console.log(stack);//output what's in the array
stack = []; //erase the array
});
$('#note_markers').click(function(){
if(recordmode){
$('.one_0').click( function(){ stack.push('one_0'); })
$('.one_1').click( function(){ stack.push('one_1') ; })
}
});
以及后来的开始和停止按钮。
<a id='record'>R</a>
<a id='stop'>stop</a>
<div id="one_notes">
<a class="one_0"></a>
<a class="one_1"></a>
<a class="one_2"></a>
<a class="one_3"></a>
</div>
同样在停止和擦除阵列之前..我想以 /one_0/one_1/one_0 等形式构建一个 URL,其中记录了阵列中的内容。(虽然还没有到那部分)
发生的情况是没有记录第一次点击,然后它开始放入两个相同的元素。我不知道为什么我会得到当前的行为。
有任何想法吗?
作为旁注,有没有办法获得任何点击元素的名称?