通过jquery的prev/next方法获得上一个、下一个显示或隐藏的LI标签,再控制标签的CSS类来实现LI标签的滚动显示。
类似的代码我以前用过,是正常的。
今天用到一个新网站发现显示不正常,好像是prev/next方法无法正常获取元素,求指点。
测试网站:http://www.xdnz120.com/bb/4
HTML代码
- HTML code
<div id="smallpic"> <a href="javascript:viewPre()"><img src="images/left.gif" width="35" height="154" class="left" /></a> <ul id="jinxuan"> <li class="view"><a href="javascript:void(0)" onclick="javascript:viewbig('/bb/upfile/2012720115958.jpg')"><img src="/bb/upfile/2012720115958_f.jpg" /></a></li> <li class="view"><a href="javascript:void(0)" onclick="javascript:viewbig('/bb/upfile/2012720112159.jpg')"><img src="/bb/upfile/2012720112159_f.jpg" /></a></li> <li class="view"><a href="javascript:void(0)" onclick="javascript:viewbig('/bb/upfile/2012720114059.jpg')"><img src="/bb/upfile/2012720114059_f.jpg" /></a></li> <li class="hide"><a href="javascript:void(0)" onclick="javascript:viewbig('/bb/upfile/2012720115958.jpg')"><img src="/bb/upfile/2012720115958_f.jpg" /></a></li> <li class="hide"><a href="javascript:void(0)" onclick="javascript:viewbig('/bb/upfile/2012720112159.jpg')"><img src="/bb/upfile/2012720112159_f.jpg" /></a></li> <li class="hide"><a href="javascript:void(0)" onclick="javascript:viewbig('/bb/upfile/2012720114059.jpg')"><img src="/bb/upfile/2012720114059_f.jpg" /></a></li> </ul> <a href="javascript:viewNext()"><img src="images/right.gif" width="35" height="154" class="left" /></a> </div>
javascript代码:
- JScript code
function viewPre() { if ($("#jinxuan li.view").prev(".hide").length > 0) { var views = $("#jinxuan li.view"); var view = views[views.length - 1]; var prevview = $(view).prev(".hide"); prevview.removeClass("hide"); prevview.addClass("view"); $(view).removeClass("view"); $(view).addClass("hide"); } } function viewNext() { if ($("#jinxuan li.view").next(".hide").length > 0) { var view = $("#jinxuan li.view")[0]; var nextview=$(view).next(".hide"); nextview.removeClass("hide"); nextview.addClass("view"); $(view).removeClass("view"); $(view).addClass("hide"); } } function viewbig(file) { $("#bcimg").attr("src",file); }
------解决方案--------------------
正确的啊 可以切换啊,,,,哪里不能获取 正常得很 ....楼主到底哪里有问题???可以站内信 我的测试环境 火狐
------解决方案--------------------
- JScript code
function viewPre() { var v = $("#jinxuan li.view"), h = v.eq(0).prev(); if (h.size() > 0) { h.attr('class', 'view'); v.filter(':last').attr('class', 'hide'); } } function viewNext() { var v = $("#jinxuan li.view"), h = v.filter(':last').next(); if (h.size() > 0) { h.attr('class', 'view'); v.eq(0).attr('class', 'hide'); } }