• tctip demo页面>


    (原)

    官网

    0.9.12 API

    2.X API

    在2.X以下在版本中,api提供了release()方法用于取消选框。但在2.X以上的版本中已经没有这个方法了。于是各种查找,终于解决了如何取消选框(官网的demo中是没有这部分的)

    先上代码:

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8" />
    		<title></title>
    		<link rel="stylesheet" type="text/css" href="css/Jcrop.css"/>
    		<script src="js/jquery.min.js" type="text/javascript" charset="utf-8"></script>
    		<script src="js/Jcrop.js" type="text/javascript" charset="utf-8"></script>
    		<script type="text/javascript">
    			var jcropApi;
    			$(document).ready(function() {
    				$('#materialTargetPic').Jcrop({
                                 onChange: showCoords,
                                   onSelect: showCoords
    			 	},function() {
                           jcropApi = this;
                        });
                         var container = $('#materialTargetPic').Jcrop('api').container;
    
    				container.on('cropstart',function(e,s,c){
    				 	$('.jcrop-shades').show();
    				});
    			})
    			
    			function showCoords (c) {
    				$('#x1').val(c.x);
    	                   $('#y1').val(c.y);
    	                   $('#x2').val(c.x2);
    	                   $('#y2').val(c.y2);
    	                   $('#w').val(c.w);
    	                   $('#h').val(c.h);	
    			}
    			
    			function sureSelected() {
    				jcropApi.removeSelection(jcropApi.ui.multi[0])
    				$('.jcrop-shades').hide();
                      }
    		
    			
    		</script>
    	</head>
    	<body>
    		<div>
    			<img src="img/sago.jpg" alt="" id="materialTargetPic"/>
    		</div>
    		<input type="text" id="x1" />
    		<input type="text" id="y1" />
    		<input type="text" id="x2" />
    		<input type="text" id="y2" />
    		<input type="text" id="w" />
    		<input type="text" id="h" />
    		<input type="button" value="click" onclick="sureSelected()"/>
    	</body>
    </html>
    

    先看看  removeSelection方法:

    在2.X的API中提供了removeSelection方法,只是因为此版本可以有多个选择框,所以这里的removeSelection方法需要接收一个选则框,如果没有传入是不会删除的,并且会返回一个选择框对象。由于我只需要用到一个选择框,也只会有一个,所以这里传入了一个[0],

    jcropApi.removeSelection(jcropApi.ui.multi[0])
    

      如果只是调用这个方法,选择框是去掉了,但是阴影部分还在

    然后就会看到后面的调用,将阴影部分隐藏起来

    $('.jcrop-shades').hide();
    

    但是如果再次选框,刚才被隐藏的地方是不会显示出来,那么需要在选时中就要把阴影部分在加进来。

    var container = $('#materialTargetPic').Jcrop('api').container;
    
    container.on('cropstart',function(e,s,c){
    	$('.jcrop-shades').show();
    });
    

     以上代码参考官方文档部分:

  • 相关阅读:
    UVA 562 Dividing coins
    who is in front of me 解题报告
    UVA 111 历史考试
    UVA 1045 最长公共子序列
    HDU 1003 解题报告
    ACM2014-04训练计划
    基于邻接表的新顶点的增加
    4004.六度空间理论
    4003.基于Dijsktra算法的最短路径求解
    4002.基于快排思想的查找
  • 原文地址:https://www.cnblogs.com/LeeScofiled/p/8488883.html
Copyright © 2020-2023  润新知