2013-05-29 50 views
0

我有一张需要显示的图片列表。图片列表非常大(500+),我不想通过单独将它们命名为a标签的href属性的html代码来加载它们。因此,我使用JavaScript来生成文件名增加1,这会产生正确的文件路径。 这里是JavaScript:将javascript递增的文件名添加到html标签中

function bigpicture() 
    { 
     var filepath = "\"images/print/latest/" ; 
     var ext = ".png\""; 
     var total = filepath + num + ext; 
     document.write(total) 
     num = num + 1; 
    } 

当我打电话bigpicture()我得到了正确的文件路径和名称,它增加以及所有的多个呼叫。我的问题是让这个字符串我的一个标签的href属性后显示,如下所示:

HTML

<div class = "big"> 
     <ul>  
      <li> 
       <a href=<script>bigpicture()</script> rel="lightbox" title=""><img class="floated_img" img src="images/print/latest/small/1.png" /></a> 
      </li> 

     </ul> 
</div> 

我假设(错误地),我可以这样调用的功能,但它确实不行。任何人都可以告诉我如何执行脚本的方式,刺痒后出现href?谢谢。

+0

我想你应该添加** **的href动态或者使用** **的onClick内或** bigpicture()**函数在文件名生成期间 – manish

回答

0

的方式你这样做是行不通的,因为在你的HTML代码中的函数调用未绑定到任何 事件像onload或onsubmit,因此不会执行。

我会用jQuery将ul附加到big div中。 您对bigpicture()调用看起来是这样的:

<script> 

    function bigpicture() 
    { 
    var filepath = "./images/print/latest/" ; 
    var ext = ".png\""; 
    for(var i = 0; i < numOfPictures; i++){ 
     $('#big ul').append('<li>' + filepath + i + ext + '</li>'); 
     } 

    } 

    $(function(){  //this is jQuery shorthand for document ready 
     bigpicture(); //anything in this anonymous function will execute 
    })    //after HTML document has been loaded 

</script> 

文档准备信息来源于here

+0

这似乎更好,我如何在我的html中实现它?我应该在列表对象通常会在列表中调用函数吗? – nkorai

+0

该函数在执行时会用'li'填充'ul'。函数在document.ready匿名函数中被调用一次。您需要添加到上面的代码中的唯一一件事是'numOfPictures'的真正价值 –