所以我有一个画廊,我需要让主要图像淡入,然后一旦点击就交叉淡入淡出。单击后,主图像的类设置为“活动”:
var gal = {
init : function() {
if (!document.getElementById || !document.createElement || !document.appendChild) return false;
if (document.getElementById('gallery')) document.getElementById('gallery').id = 'jgal';
var li = document.getElementById('jgal').getElementsByTagName('li');
li[0].className = 'active';
for (i=0; i<li.length; i++) {
li[i].style.backgroundImage = 'url(' + li[i].getElementsByTagName('img')[0].src + ')';
li[i].title = li[i].getElementsByTagName('img')[0].alt;
gal.addEvent(li[i],'click',function() {
var im = document.getElementById('jgal').getElementsByTagName('li');
for (j=0; j<im.length; j++) {
im[j].className = '';
}
this.className = 'active';
}
我在这里尝试添加
this.fadeIn( '快');
设置类后,但这不起作用。有什么想法吗?
由于
答案 0 :(得分:1)
使用此解决方法解决:
$(本).hide(); $(本).fadeIn( “慢”); this.className ='active';
答案 1 :(得分:0)
把它扔到那里希望它有所帮助。如果您在页面中包含jQuery,请使用它(至少就可维护性而言),如下所示:
var gal = {
init : function() {
$('#gallery').attr('id', 'jgal').find('li').each(function() {
var $this = $(this), i = $this.find('img')[0];
$this.css('backgroundImage', 'url(' + i.src + ')').attr('title', i.alt);
}).click(function() {
$(this).addClass('active').hide().fadeIn('slow')
.siblings().removeClass('active');
}).first().click();
}