嗨,我在导航栏中列出了:
<div data-role="navbar">
<ul id="mylist">
<li onclick=getData() id="first"><a href="#">First</a></li>
<li onclick=getData() id="second"><a href="#">Second</a></li>
<li onclick=getData() id="third"><a href="#">Third</a></li>
<li onclick=getData() id="four"><a href="#">Four</a></li>
</ul>
</div>
我有 getData 功能:
<script type="text/javascript">
function getData()
{
console.log ("first line in getData>>>>");
$("#first").live("click",function()
{
console.log("click on first>>>");
chkTitle=$(this).text();
responseData();
});
$("#second").live("click",function()
{
console.log ("click on second>>>");
chkTitle=$(this).text();
responseData();
});
$("#third").live("click",function()
{
console.log("click on third>>>");
chkTitle=$(this).text();
responseData();
});
$("#four").live("click",function()
{
console.log("click on four>>>");
chkTitle=$(this).text();
responseData();
});
}
</script>
现在,当我第一次点击时,一切都很好。但是当我点击第二次假设时,它会打印一次:“getData>>>>中的第一行”但打印两次:“点击第二次>>>”第三次打印三次,依此类推..
每次 getData>>>> 中的第一行只打印一次,但 live("click",function() 数据每次打印越来越多,为什么会这样?