账号通
    

账号  

密码  

7286

查看

19

回复
主题:Kesion V8.03后台图片裁剪实现实时显示裁剪框尺寸等功能 [收藏主题] 转到:  
悠客 当前离线

213

主题

15

广播

7

粉丝
添加关注
级别:二年级

用户积分:996 分
登录次数:401 次
注册时间:2010/11/8
最后登录:2019/10/28
悠客 发表于:2012/3/12 11:59:35   | 显示全部帖子 查看该作者主题 楼主 
科汛在线商城系统(NET)

原文参考:http://hi.baidu.com/czhao123/blog/item/1f48f4fcc17b33e9fd037f40.html

见论坛有童鞋说在Kesion V8.03后台无法实现此功能:http://bbs.kesion.com/forumthread-347005.html,今天抽空整理了下,其实代码差不多,按原文代码是可以顺利实现的。再次感谢原作者!

本方法需要修改plug/ImgCut.asp和ks_inc/imgplus/resize.js两个文件。



下面是修改方法:

一、打开plug/ImgCut.asp,找到

  1. #bgDiv{ min-height:400px;border:3px solid #000; position:relative;}
  2. #tools{ margin:5px;}

对应添加红色部分。往下,继续查找

  1.   <div id="bgDiv">
  2.         <div id="dragDiv">
  3.           <div id="rRightDown"> </div>
  4.           <div id="rLeftDown"> </div>
  5.           <div id="rRightUp"> </div>
  6.           <div id="rLeftUp"> </div>
  7.           <div id="rRight"> </div>
  8.           <div id="rLeft"> </div>
  9.           <div id="rUp"> </div>
  10.           <div id="rDown"></div>
  11.          </div>
  12.         </div>
  13.         <div id="tools">
  14.         <input value="缩小原图" type="button" id="idSize_small" />
  15.         <input value="放大原图" type="button" id="idSize_big" />
  16.         <input value="默认大小" type="button" id="idSize_old" />
  17.         裁剪宽度:<input value="400" name="drag_w" id="drag_w" type="text" style="width:30px;"/> px
  18.         裁剪高度:<input value="300" name="drag_h" id="drag_h" type="text" style="width:30px;"/> px
  19.         </div>
  20.       </div></td>

对应添加红色部分。

二、给上面的几个按钮添加对应的js功能。往下查找

  1. <script>
  2. var h,w,ic;
  3. //新定义几个变量,o_w:保存原始的宽,o_h:保存原始的高,max_w:最大宽度,max_h:最大高度
  4. var o_w,o_h,max_w=400,max_h=300;
  5. $(document).ready(function(){
  6. w=$("#si").width();
  7. h=$("#si").height();
  8. //=====================================
  9. o_w=w;
  10. o_h=h;
  11. if (w>max_w) {w=max_w;o_w=max_w;}
  12. if (h>max_h) {h=max_h;o_h=max_h;}
  13. //=====================================
  14. if (w>400) w=400;
  15. //if (h>600) h=600;
  16. ic = new ImgCropper("bgDiv", "dragDiv", "<%=PhotoUrl%>", {
  17. Width:w, Height: h, Color: "#999999",
  18. Resize: true,
  19. Right: "rRight", Left: "rLeft", Up: "rUp", Down: "rDown",
  20. RightDown: "rRightDown", LeftDown: "rLeftDown", RightUp: "rRightUp", LeftUp: "rLeftUp",
  21. Preview: "viewDiv", viewWidth: 200, viewHeight: 200
  22. })
  23. //预设裁剪框的宽高======================
  24. $$("drag_w").onchange = function(){
  25. v_drag_w=$$("drag_w").value;
  26. $$("dragDiv").style.width=v_drag_w+"px";
  27. v_drag_h=$$("drag_h").value;
  28. $$("dragDiv").style.height=v_drag_h+"px";
  29. ic.Resize=false;
  30. ic.Init();
  31. }
  32. $$("drag_h").onchange = function(){
  33. v_drag_w=$$("drag_w").value;
  34. $$("dragDiv").style.width=v_drag_w+"px";
  35. v_drag_h=$$("drag_h").value;
  36. $$("dragDiv").style.height=v_drag_h+"px";
  37. ic.Resize=false;
  38. ic.Init();
  39. }
  40. //缩小原图尺寸
  41. $$("idSize_small").onclick = function(){
  42. w=w*0.9;
  43. h=h*0.9;
  44. if (w<10) w=10;
  45. if (h<10) h=10;
  46. ic.Width = w;
  47. ic.Height = h;
  48. ic.Init();
  49. }
  50. //放大原图尺寸
  51. $$("idSize_big").onclick = function(){
  52. w=w*1.1;
  53. h=h*1.1;
  54. if (w>max_w) w=max_w;
  55. if (h>max_h) h=max_h;
  56. ic.Width = w;
  57. ic.Height = h;
  58. ic.Init();
  59. }
  60. //还原原图尺寸
  61. $$("idSize_old").onclick = function(){
  62. w=o_w;
  63. h=o_h;
  64. ic.Width = w;
  65. ic.Height = h;
  66. ic.Init();
  67. }
  68. //=========================================
  69. });

  70. function Create(){
  71. var p = ic.Url, o = ic.GetPos();
  72. x = o.Left,
  73. y = o.Top,
  74. w = o.Width,
  75. h = o.Height,
  76. pw = ic._layBase.width,
  77. ph = ic._layBase.height;
  78. $("#myform").attr("action","ImgCutSave.asp?p=" + p + "&x=" + x + "&y=" + y + "&w=" + w + "&h=" + h + "&pw=" + pw + "&ph=" + ph + "&" + Math.random());
  79. $("#myform").submit();
  80. }
  81. $(function(){
  82. //$("#bgDiv").width($("#bgDiv").find("img").width());
  83. //$("#bgDiv").height($("#bgDiv").find("img").height());
  84. $("#bgDiv").width=max_w;
  85. $("#bgDiv").height=max_h;
  86. });
  87. </script>

对应修改和添加红色部分。

三、打开ks_inc/imgplus/resize.js文件,查找

  1. //设置样式,变量必须大于等于0否则ie出错
  2. with(this._obj.style){
  3. width = this._styleWidth + "px"; height = this._styleHeight + "px";
  4. top = this._styleTop + "px"; left = this._styleLeft + "px";
  5. //实现实时显示裁剪框尺寸
  6. $$("drag_w").value=this._styleWidth;
  7. $$("drag_h").value=this._styleHeight;
  8. //================
  9. }
  10. //附加程序
  11. this.onResize();
  12. },

对应添加红色部分。完工!

 
科讯NET交流群 321062970
  支持(1) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.12891秒 powered by KesionCMS 9.0