日期:2014-05-20  浏览次数:20454 次

把以下旋转图片的代码(函数)邦定到动态生成不定数量的的代码,
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>js图片查看器(可缩放、旋转、翻转)</title>
<script src="CJL.0.1.min.js"></script>
<script src="ImageTrans.js"></script>
</head>
<body>
<style>  
#idContainer{border:1px solid #000;width:600px; height:500px; background:#FFF center no-repeat;}
</style>
js图片查看器(可缩放、旋转、翻转)<br>
<div id="idContainer"> </div>
<input id="idLeft" type="button" value="向左旋转" />
<input id="idRight" type="button" value="向右旋转" />
<input id="idVertical" type="button" value="垂直翻转" />
<input id="idHorizontal" type="button" value="水平翻转" />
<input id="idReset" type="button" value="重置" />
<br>
<input id="idSrc" type="text" value="2.jpg" />
<input id="idLoad" type="button" value="换图" />
<br>
ps:鼠标拖动图片旋转,鼠标滚动滚轮缩放。<br><br>
作者:<a href="http://www.cnblogs.com/cloudgamer/">cloudgamer</a>,<a href="http://www.cnblogs.com/cloudgamer/archive/2010/08/16/ImageTrans.html">程序说明</a>
<script>  
(function(){
 
var container = $$("idContainer"), src = "1.jpg",
options = {
onPreLoad: function(){ container.style.backgroundImage = "url('loading.gif')"; },
onLoad: function(){ container.style.backgroundImage = ""; }
},
it = new ImageTrans( container, options );
it.load(src);
//垂直翻转
$$("idVertical").onclick = function(){ it.vertical(); }
//水平翻转
$$("idHorizontal").onclick = function(){ it.horizontal(); }
//左旋转
$$("idLeft").onclick = function(){ it.left(); }
//右旋转
$$("idRight").onclick = function(){ it.right(); }
//重置
$$("idReset").onclick = function(){ it.reset(); }
//换图
$$("idLoad").onclick = function(){ it.load( $$("idSrc").value ); }
 
})()
</script>
</body>
</html>

图片数量和名称由服务器查询产生,不定的,每个图片对应一组上述的操作按钮,进行旋转变换操作

------解决方案--------------------
生成以后的界面是怎样的
------解决方案--------------------
直接说效果 
想干什么?
------解决方案--------------------
每个图像都要有同样的按钮? 公用一套不行?

我晚些时候会回复的。
------解决方案--------------------
服务端将每一组图片循环输出来

其实也可以弄一个选中状态的高亮背景框,点哪个图片就选中哪个,然后只需要弄一组操作按钮,只针对当前选中的那个图片操作

------解决方案--------------------
我说的每一组图片,是指包含了四个操作按钮为一组

不然你还得在JS中动态地四个按钮插入DOM中
------解决方案--------------------
HTML code

<head runat="server">
    <title></title>
    <script type="text/javascript" src="Scripts/CJL.0.1.min.js"></script>
    <script type="text/javascript" src="Scripts/ImageTrans.js"></script>
    <style type="text/css">
        .idContainer
        {
            border: 1px solid #000;
            width: 400px;
            height: 300px;
            background: #FFF center no-repeat;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <asp:Repeater ID="rp" runat="server">
        <HeaderTemplate>
            <table>
        </HeaderTemplate>
        <ItemTemplate>
            <%#(Container.ItemIndex + 1) % HorizontalCount == 1 ? "<tr>" : ""%>
            <td>
                <div id="idContainer<%#Container.ItemIndex%>" class='idContainer'>
                </div>
                <input id="idLeft<%#Container.ItemIndex%>" type="button" value="向左旋转" />
                <input id="idRight<%#Container.ItemIndex%>" type="button" value="向右旋转" />
                <input id="idVertical<%#Container.ItemIndex%>" type="button" value="垂直翻转" />
                <input id="idHorizontal<%#Container.ItemIndex%>" type="button" value="水平翻转" />
                <input id="idReset<%#Container.ItemIndex%>" type="button" value="重置" />
                <input id="idCanvas<%#Container.ItemIndex%>" type="button" value="使用Canvas" />
                <br />
                <input id="idSrc<%#Container.ItemIndex%>" type="text" 
value="http://images.cnblogs.com/cnblogs_com/cloudgamer/143727/r_xx2.jpg" />
                <input id="idLoad<%#Container.ItemIndex%>" type="button" value="换图" />
            </td>
            <%#(Container.ItemIndex + 1) % HorizontalCount == 0 ? "</tr>" : ""%>
        </ItemTemplate>
        <FooterTemplate>
            <%=EndHTML%>
            </table>
        </FooterTemplate>
    </asp:Repeater>
    <asp:Literal ID="litJS" runat="server"></asp:Literal>    
    <asp:Button ID="btn" runat="server" />
    </form>
</body>
</html>