Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将jquery事件添加到添加的类中?_Javascript_Jquery_Dynamic_Image Gallery - Fatal编程技术网

Javascript 如何将jquery事件添加到添加的类中?

Javascript 如何将jquery事件添加到添加的类中?,javascript,jquery,dynamic,image-gallery,Javascript,Jquery,Dynamic,Image Gallery,我正在尝试创建一个图像库,我使用数字而不是左/右箭头。目前,我正试图让它只与2个图像I.g 2数字工作 这是html。id页是突出显示的数字 <div class="grid_1 pagelink" id="page"><p><a href="">1</a></p></div> <div class="grid_1 pagelink"><p><a href="">2</a>

我正在尝试创建一个图像库,我使用数字而不是左/右箭头。目前,我正试图让它只与2个图像I.g 2数字工作

这是html。id页是突出显示的数字

 <div class="grid_1 pagelink" id="page"><p><a href="">1</a></p></div> 
<div class="grid_1 pagelink"><p><a href="">2</a></p></div> 
我以为.live会帮我的,但它不起作用

我希望你能帮忙


谢谢

现场直播应该很好。我认为您的代码中有一个bug,可能在这里:

$(this).attr('id', 'page').removeClass('pagelink');
$('#page').addClass('pagelink').removeAttr('id','page');
你到底想用这段代码实现什么

当您单击page2时,您将div的id设置为page,但现在您有两个id为page的元素,当您选择该id时,您将得到第一个ie page1,但仍然从page2中删除了类pagelink


换句话说,错误在于,在某个时候,您将有两个具有相同id的元素,并且id必须是唯一的。顺便说一句,当您使用$'page'选择该id时,您总是会得到前面的第一个id,这是因为您正在删除用于映射单击事件的link pagelink类

另外,使用另一个类而不是idpage来标识页面链接,如果其id已分配给其他链接,则可能会出现问题。像

$(this).removeClass('pagelink').addClass('page');
$('.page').addClass('pagelink').removeClass('page');

我正在尝试做类似的事情,并且遇到了类似的问题。当你第一次点击链接加载gallery时,事件已经绑定,所以当我返回gallery时,它想启动新的事件绑定,但失败了。我起初也这么认为。但事实证明,在设置click事件处理程序之后,更改类并不重要。示例:刚刚意识到问题,请参见答案again@mazz:是的,正常点击就是这种情况,但live的工作方式不同,在这种情况下,删除该类将破坏事件处理程序:哦,糟糕,没有看到。live@Naren例如我想你以前的答案是对的。想把它放回去让我们投票吗?是不是在第一行我把idpage添加到第二个链接并删除pagelink,然后在第一个链接我添加pagelink并删除页面-页面{是突出显示的div}和链接页面{是正常的div}-在pageload上,第一个链接突出显示-然后当我突出显示第二个链接时,我无法在单击id页=已访问状态类pagelink=正常状态时获取要突出显示的第一个链接,因此在我单击它之前链接2-这是正常的,在我单击它之后,它是已访问的页面-同时我需要从链接1中删除idpage。现在link2是visitedpage,link1是normalpagelink——这就是我的代码停止的地方,因为当我试图使一个链接被访问时,它不起作用
$(this).removeClass('pagelink').addClass('page');
$('.page').addClass('pagelink').removeClass('page');