可缩放Reloaded-一个针对可缩放元素的复用组件


Posted in Javascript onMarch 10, 2007

原文地址:http://www.jackslocum.com/blog/2006/11/24/resizable-reloaded/

这些范例展示了元素如何应用了一个浮动(默认)和装上可缩放的组件。

查看 basic.js 完整代码。

基本范例
这是个简单的可缩放的范例。在矩形附近可调节大小。这个例子采用了“浮动”的默认处理。

Resize Me!
 
 
 
var basic = new YAHOO.ext.Resizable('basic', {
    width: 200,
    height: 100,
    minWidth:100,
    minHeight:50
});

包裹元素

一些元素并没有子元素,例如images and textares。过去的做法是,你把这些元素放进一个可缩放的元素里面,作为其的子元素。到了yui-ext .33rc2,组件会将这些元素包裹好,即通过计算borders/padding应调整多少,偏移出合适的句柄。你所需要做的只是声明"wrap:true"。手工加入resizeChild做法也是支持的

调节栏
注意蓝色的调节栏。属性为 "pinned:true".

动态调整
如果您不想代理调整,可打开动态调整,只要"dynamic:true" 。

下面的textarea打开了动态调整,并附有调节栏。

 
 
 

如此简单的代码,连电脑装机的都会写

var dwrapped = new YAHOO.ext.Resizable('dwrapped', {
  wrap:true,
  pinned:true,
  width:450,
  height:150,
  minWidth:200,
  minHeight: 50,
  dynamic: true
});

按比例缩放
有些图像的按比例缩放,属性为: preserveRatio:true.

可缩放Reloaded-一个针对可缩放元素的复用组件
 
 
 
var wrapped = new YAHOO.ext.Resizable('wrapped', {
  wrap:true,
  pinned:true,
  minWidth:50,
  minHeight: 50,
  preserveRatio: true
});

直接方式
一种直接了当,不用花俏的处理方式。属性为 transparent to true.

可缩放Reloaded-一个针对可缩放元素的复用组件
 
 
 
var transparent = new YAHOO.ext.Resizable('transparent', {
  wrap:true,
  minWidth:50,
  minHeight: 50,
  preserveRatio: true,
  transparent:true
});

自定义方式
       八个方向的缩放。要使得元素在x、y方向可调节,那么这个元素应该是绝对定位的(positioned absolute). 你也可以通过属性"handles"来确定某一方向出现与否,而且允许你在CSS里修改它的样式。

这是一张八个方向的缩放的、自定义调节栏的、可移动的按正比例缩放的图片 (做起来不太容易!).
双击图片隐藏

var custom = new YAHOO.ext.Resizable('custom', {
  wrap:true,
  pinned:true,
  minWidth:50,
  minHeight: 50,
  preserveRatio: true,
  dynamic:true,
  handles: 'all', // shorthand for 'n s e w ne nw se sw'
  draggable:true
});

固定调节(译者注,这个功能好像有点问题,间歇性运行不正常,待修复!)
每次调节量都是 固定值

 
var snap = new YAHOO.ext.Resizable('snap', {
  pinned:true,
  width:250,
  height:100,
  handles: 'e',
  widthIncrement:50,
  minWidth: 50,
  dynamic: true
});
注意: 固定调节 和 按比例 是冲突的 ,不能用于一起。

加入动画效果
动画效果有两个参数 easing(特性) 和 duration(持续时间) 并 设置 animate:true,

Animate Me!
 
 
 
var animated = new YAHOO.ext.Resizable('animated', {
  width: 200,
  height: 100,
  minWidth:100,
  minHeight:50,
  animate:true,
  easing: YAHOO.util.Easing.backIn,
  duration:.6
});
注意:很明显的原因动画和动态调整dynamic是不能用在一起的。
Javascript 相关文章推荐
js 字符串转换成数字的三种方法
Mar 23 Javascript
通过JS来判断页面控件是否获取焦点
Jan 03 Javascript
JavaScript中消除闭包的一般方法介绍
Mar 16 Javascript
Bootstrap使用基础教程详解
Sep 05 Javascript
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
Oct 10 Javascript
清除浏览器缓存的几种方法总结(必看)
Dec 09 Javascript
原生js实现商品放大镜效果
Jan 12 Javascript
angularJs中datatable实现代码
Jun 03 Javascript
React学习笔记之列表渲染示例详解
Aug 22 Javascript
小程序从手动埋点到自动埋点的实现方法
Jan 24 Javascript
Vue实现导航栏的显示开关控制
Nov 01 Javascript
微信小程序实现电子签名功能
Jul 29 Javascript
为Yahoo! UI Extensions Grid增加内置的可编辑器
Mar 10 #Javascript
Gird事件机制初级读本
Mar 10 #Javascript
Gird组件 Part-3:范例RSSFeed Viewer
Mar 10 #Javascript
对YUI扩展的Gird组件 Part-2
Mar 10 #Javascript
对YUI扩展的Gird组件 Part-1
Mar 10 #Javascript
学习YUI.Ext第七日-View&JSONView Part Two-一个画室网站的案例
Mar 10 #Javascript
学习YUI.Ext 第六天--关于树TreePanel(Part 2异步获取节点)
Mar 10 #Javascript
You might like
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
2011/07/03 PHP
微博短链接算法php版本实现代码
2012/09/15 PHP
firefox 和 ie 事件处理的细节,研究,再研究 书写同时兼容ie和ff的事件处理代码
2007/04/12 Javascript
简单实例处理url特殊符号&处理(2种方法)
2013/04/02 Javascript
js图片预加载示例
2014/04/30 Javascript
推荐4个原生javascript常用的函数
2015/01/12 Javascript
js实现绿白相间竖向网页百叶窗动画切换效果
2015/03/02 Javascript
javascript解三阶幻方(九宫格)
2015/04/22 Javascript
Jquery对新插入的节点 绑定Click事件失效的解决方法
2016/06/02 Javascript
bootstrap使用validate实现简单校验功能
2016/12/02 Javascript
jQuery实现模拟flash头像裁切上传功能示例
2016/12/11 Javascript
javascript 开发之百度地图使用到的js函数整理
2017/05/19 Javascript
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
2018/07/23 Javascript
微信小程序云开发之使用云函数
2019/05/17 Javascript
基于Node.js的大文件分片上传示例
2019/06/19 Javascript
vue.js购物车添加商品组件的方法
2019/09/17 Javascript
nodejs实现聊天机器人功能
2019/09/19 NodeJs
vue-router的hooks用法详解
2020/06/08 Javascript
详解Python中的序列化与反序列化的使用
2015/06/30 Python
简介Django中内置的一些中间件
2015/07/24 Python
Python实现的生成格雷码功能示例
2018/01/24 Python
彻底理解Python中的yield关键字
2019/04/01 Python
Django组件content-type使用方法详解
2019/07/19 Python
python 修改本地网络配置的方法
2019/08/14 Python
python实现复制文件到指定目录
2019/10/16 Python
Python基于gevent实现文件字符串查找器
2020/08/11 Python
你不知道的5个HTML5新功能
2016/06/28 HTML / CSS
HTML5几个设计和修改的页面范例分享
2015/09/29 HTML / CSS
如何写出好的Java代码
2014/04/25 面试题
涉外文秘个人求职的自我评价
2013/10/07 职场文书
七一党建活动方案
2014/01/28 职场文书
《影子》教学反思
2014/02/21 职场文书
爱情保证书大全
2014/04/29 职场文书
产品销售计划书
2014/05/04 职场文书
2014国庆65周年领导讲话稿(3篇)
2014/09/21 职场文书
Nginx 反向代理解决跨域问题多种情况分析
2022/01/18 Servers