现在我有一些图片的名称是数组形式的代码这样
String[] files = file.list();
图片名称都在这个files数组里面,现在页面显示的只有这些名称,我要实现的是点击每一个名称,显示图片,但是不是那种页面跳转的显示,要那种单独一张图片显示在桌面上,不是在浏览器里面。这要怎么显示啊?是不是要用swing??

解决方案 »

  1.   

    显示在桌面上?以web方式?不行。
      

  2.   

    你要的是qq空间里的那种效果吗?其实那种就是显示在浏览器中的,它是先在当前页面新建一个div层,然后将要显示的图片放在里面。
      

  3.   


    晕,那你还说不在浏览器中显示。那只不过是在网页上加了一层,其实还是在浏览器中啊。这个好实现,你直接在页面上js里通过document.createElement("div");如:var d = document.createElement("div");
    d.innerHTML = "<img src = '你的图片地址'/>"
      

  4.   

    对了,忘了设置定位了。
    var d = document.createElement("div");
    d.style.position = "absolute";
    d.style.top = "0px";
    d.style.left = "0px";
    d.innerHTML = "<img src = '你的图片地址'/>"
      

  5.   

    我按照你的方式改了,代码如下:function showPic(pic){
    var d = document.createElement("div");
    d.style.position = "absolute";
    d.style.top = "0px";
    d.style.left = "0px";
    d.innerHTML = "<img src='<%=request.getContextPath() %>/images/pic'/>"
    }jsp的代码如下
     <%
                 //Properties prop = new Properties();
                 //InputStream in = this.getClass().getClassLoader().getResourceAsStream("./wfc_config.properties");
                 //prop.load(in);
                 File file = new File("D:\\Workspaces\\Mh\\WebRoot\\images");
                
                 String[] files = file.list();
                
                 for(int i=0;i<files.length;i++){
                 System.out.println("元素为:####"+ files[i]+"####");         
                %>
              <tr onmouseover="this.bgColor='#F7FDFF'" style="cursor:hand" onmouseout="this.bgColor='#FFFFFF'" bgcolor="#FFFFFF" onclick="showPic('<%=files[i]%>')">
    我onclick事件须要把图片的名称传递过去,要不然图片显示不了。我的写法似乎不对。请问哪里错了?
      

  6.   

    ------------------------------------------------
    我测试了下  除了<img src = '你的图片地址'/>这句代码   在网页中加了张图片外  没其他的效果啊
      

  7.   

    你先在function showPic(pic){这一行下面alert(pic),看你传的图片名对不。
    如果正确,那你下面一句:
    d.innerHTML = "<img src='<%=request.getContextPath() %>/images/pic'/>"改成:
    d.innerHTML = "<img src='<%=request.getContextPath() %>/images/"+pic+"'/>"
      

  8.   

    没有反应,我alert(pic),这个pic是对的。但是点击了之后没有反应啊
      

  9.   

    那你确定你图片是放在images下面的?那你alert("<%=request.getContextPath() %>/images/"+pic);看路径是否正确。
      

  10.   

    呃,,,,上不了QQ啦。哦,对了,差一句重要的,不好意思。
    在最后添加一句:document.body.appendChild(d);
      

  11.   


    哈哈,你又问到点子上了。我都已经下班了。
    再最后为你写两句。写完闪人。
    在刚才那后面再加下面的:var b = document.createElement("button");
    b.innerHTML = "关闭";
    d.appendChild(b);
    b.onclick=function(d){
     document.body.removeChild(d);
    }也就是加一个关闭按钮,点它,就把这个div层删除。
      

  12.   


    哥们儿的dome用得不错啊!!
      

  13.   

    web只能显示在浏览器中不能显示在桌面上
    如果你想加一些特效可以用div javascript