2010-05-07 72 views
1

我试图同时为两个不同的HTML元素调用两个不同的函数,但第二个函数并没有被读取。我也试图使用id来指定要从中获取数据的相应元素。下面是我有:同时调用多个函数

function changeImage(id) 
{ 
    var s = document.getElementById('showcase'); 
    var simg = s.getElementsByTagName('img'); 
    var slen = simg.length; 

    for(i=0; i < slen; i++) 
    { 
    simg[i].style.display = 'none'; 
    } 
    $('#' + id).fadeIn('slow', 0); 

    function createComment(jim) 
{ 
    //alert('hello?'); 
    var d = document.getElementById('description'); 
    var dh = document.getElementsByTagName('p'); 
    var dlen = dh.length; 

    //alert(dh); 

    for(i=0; i < dlen; i++) 
    { 
    alert(dh); 
    dh[i].style.display = 'none'; 
    } 
    $('#' + jim).fadeIn('slow', 0); 

} 

回答

2

看样子你缺少右括号}你changeImage函数的末尾。

您也可以大大使用jQuery缩短你的脚本:

function changeImage(id) 
{ 
    $('#showcase img').hide(); 
    $('#' + id).fadeIn('slow'); 
} 
function createComment(jim) 
{ 
    $('#description p').hide(); 
    $('#' + jim).fadeIn('slow'); 
} 

而且,我不知道为什么你的fadeIn()函数内部一个零?如果你想img/p立即显示,只需使用.show()