可缩放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 相关文章推荐
Javascript 写的简单进度条控件
Jan 22 Javascript
javascript 写类方式之六
Jul 05 Javascript
css如何让浮动元素水平居中
Aug 07 Javascript
基于JSON格式数据的简单jQuery幻灯片插件(jquery-slider)
Aug 10 Javascript
JS动态的把左边列表添加到右边的实现代码(可上下移动)
Nov 17 Javascript
JavaScript cookie详解及简单实例应用
Dec 31 Javascript
详解vue + vuex + directives实现权限按钮的思路
Oct 24 Javascript
webpack 插件html-webpack-plugin的具体使用
Apr 09 Javascript
django使用channels2.x实现实时通讯
Nov 28 Javascript
JS实现求5的阶乘示例
Jan 21 Javascript
微信小程序云开发(数据库)详解
May 17 Javascript
js的Object.assign用法示例分析
Mar 05 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 SOCKET编程详解
2015/05/22 PHP
php微信开发之关注事件
2018/06/14 PHP
PHP下用Swoole实现Actor并发模型的方法
2019/06/12 PHP
List Information About the Binary Files Used by an Application
2007/06/11 Javascript
javascript 实现父窗口引用弹出窗口的值的脚本
2007/08/07 Javascript
prototype Element学习笔记(Element篇三)
2008/10/26 Javascript
javascript 跨浏览器开发经验总结(五) js 事件
2010/05/19 Javascript
javascript开发技术大全-第1章javascript概述
2011/07/03 Javascript
JS验证IP,子网掩码,网关和MAC的方法
2015/07/02 Javascript
JS实现浏览器状态栏文字闪烁效果的方法
2015/10/27 Javascript
Knockoutjs 学习系列(一)ko初体验
2016/06/07 Javascript
jQuery on()方法绑定动态元素的点击事件实例代码浅析
2016/06/16 Javascript
JS本地刷新返回上一页代码
2016/07/25 Javascript
require.js与bootstrap结合实现简单的页面登录和页面跳转功能
2017/05/12 Javascript
Web技术实现移动监测的介绍
2017/09/18 Javascript
详解webpack性能优化——DLL
2017/10/20 Javascript
vue使用技巧及vue项目中遇到的问题
2018/06/04 Javascript
浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
2018/12/20 Javascript
Vue多环境代理配置方法思路详解
2019/06/21 Javascript
Vue 实现简易多行滚动"弹幕"效果
2020/01/02 Javascript
[12:29]《一刀刀一天》之DOTA全时刻19:蝙蝠骑士田伯光再度不举
2014/06/10 DOTA
Python遍历zip文件输出名称时出现乱码问题的解决方法
2015/04/08 Python
利用python修改json文件的value方法
2018/12/31 Python
Python守护进程实现过程详解
2020/02/10 Python
Python图像处理库PIL的ImageFilter模块使用介绍
2020/02/26 Python
Python try except finally资源回收的实现
2021/01/25 Python
CSS3制作文字半透明倒影效果的两种实现方式
2014/08/08 HTML / CSS
HTML5新表单元素_动力节点Java学院整理
2017/07/12 HTML / CSS
设计总监岗位职责
2013/12/07 职场文书
给老婆大人的检讨书
2014/02/24 职场文书
乡镇总工会学雷锋活动总结
2014/03/01 职场文书
学校三八妇女节活动总结
2015/02/06 职场文书
婚前保证书范文
2015/02/28 职场文书
社区环境卫生倡议书
2015/04/29 职场文书
2016年乡镇七一建党节活动总结
2016/04/05 职场文书
公文写作指导之倡议书!
2019/07/03 职场文书