当前位置: 首页 > news >正文

路由器设置用来做网站空间吗《30天网站建设实录》

路由器设置用来做网站空间吗,《30天网站建设实录》,生产管理erp软件,外贸经常用的网站纵观主流JS库和框架#xff0c;YUI在自定义事件方面做的尤为出色。如果需要挑出一个代表性的feature#xff0c;那么非事件默认行为莫属。 是什么 YUI自定义事件在总体上模仿了DOM事件的设计思想。DOM中的一些事件是有默认行为的#xff0c;详细见DOM3 Event - Default acti… 纵观主流JS库和框架YUI在自定义事件方面做的尤为出色。如果需要挑出一个代表性的feature那么非事件默认行为莫属。 是什么 YUI自定义事件在总体上模仿了DOM事件的设计思想。DOM中的一些事件是有默认行为的详细见DOM3 Event - Default actions and cancelable events一节。简单来说所谓默认行为是指该事件在通常情况下所表现出来的动作例如 一个链接节点的click事件默认行为是转向该链接href属性对应的地址表单的submit事件默认行为是将表单包含的数据提交给表单的action说通常情况下是因为有时开发者会在事件的回调函数中调用 e.preventDefault();来阻止默认行为的发生。 YUI自定义事件遵循了同样的思路甚至API也和DOM完全一致。 有啥用 事件默认行为本质上是一种管理事件和行为的对应关系的机制。这种机制既不像回调那样死板也不像消息那样开放。通过将通用处理逻辑作为事件默认行为满足常见需求的同时为定制化需求提供了一定开放性整体上更加灵活。 在DOM事件中和默认行为相关的场景并不少见 监听到链接的click事件时在链接地址中加入追踪参数利用默认行为跳转到新地址阻止表单submit事件默认行为改为异步提交表单提供更好的用户体验在自定义事件的应用中也会遇到一些类似的例子。例如 注册时有一些邮箱虽然是可用的但对于EDM不给力在这种情况下阻止表单项验证成功的默认行为展示建议用户使用其它邮箱的提示表单验证组件在检查表单项失败后触发failure事件对应的默认行为是在表单项下方显示错误信息。这样的处理在大部分情况下是完全OK的。不过有一天交互设计师在一个特定场景下提出所有提示都应该放在整个表单顶部得益于这种灵活的机制实现这种定制化逻辑十分轻松字符计数插件在输入变化时会默认更新字符数提示。在评价内容中有更复杂的提示逻辑和展示效果这时阻止默认行为实现定制化内容即可怎么用 下面以表单项验证组件为例展示如何使用事件默认行为。 首先创建FieldValidator组件并使其具备EventTarget的功能实现自定义事件机制 var FieldValidator function (ndField, validateFn) {var instance this;// ... }; Y.augment(FieldValidator, Y.EventTarget);使用publish声明检查成功和失败的自定义事件主要目的是定义事件的默认行为 var FieldValidator function (ndField, validateFn) {// ...// 声明检查成功事件设置默认行为instance.publish(success, {emitFacade: true,defaultFn: function (e) {e.field.next(.tip).setHTML(ok);}});// 声明检查失败事件设置默认行为instance.publish(failure, {emitFacade: true,defaultFn: function (e) {e.field.next(.tip).setHTML(error);}}); };接下来注册表单项的focus、blur事件在blur触发时检查表单内容并触发自定义事件 var FieldValidator function (ndField, validateFn) {// ...ndField.on({focus: function (e) {ndField.next(.tip).setHTML();},blur: function (e) {if (validateFn(this.get(value))) {// 检查通过触发检查成功事件instance.fire(success, { field: ndField });} else {// 检查未通过触发检查失败事件instance.fire(failure, { field: ndField });}}}); };现在就可以使用这个组件了一般情况下我们不需要阻止默认行为下面是一个具体示例 // 检查邮箱 new FieldValidator(Y.one([nameemail]), function (value) {return /^(\w)(\.\w)*(\w)((\.\w))$/.test(value); });一切看起来都很美直到有一天你接到一个需求Yahoo邮箱在检查通过时需要展示EDM不给力的提示这时候默认行为就可以来拯救你了 var validator new FieldValidator(Y.one([nameemail]), function (value) {return /^(\w)(\.\w)*(\w)((\.\w))$/.test(value); }); validator.on(success, function (e) {if (e.field.get(value).indexOf(yahoo.com) ! -1) {// 阻止默认行为e.preventDefault();// 定制化行为e.field.next(.tip).setHTML(换个邮箱吧yahoo.com邮箱收不到优惠通知哦);} });在success事件的回调中通过阻止默认行为不再执行提示内容为OK的默认逻辑而是切换成判断雅虎邮箱并给出特定提示的定制化逻辑。 完整代码展示请移步JSFiddle。 要注意 一个好的idea最容易被滥用。默认行为不是万能药只适合一些这样的场景 需要通过事件进行消息广播。如果callback就可以解决问题那么明智之举是使用callback存在定制化需求的预期即有些情况下需要中止默认行为的发生换之以定制化行为参考 DOM3 Event - Default actions and cancelable eventsYUI EventTarget
http://www.pierceye.com/news/707974/

相关文章:

  • 签名能留链接的网站数据库网站建设公司
  • 网站权重不够高 导致创建网站销售产品
  • 中国建设报网站做网站如何文字链接文字
  • 网站建设网站多少钱网站上做值机的app
  • 百度手机网站提交做网站优化的教程
  • wordpress建站教程贴吧网站建设的论文的参考文献
  • 公司网站设计建议php7 wordpress
  • 商城网站建设策划书扬中会建网站
  • 铜陵市网站建设如何建立小程序商城
  • 大型网站运营步骤做网站f12的用处
  • 静态网站什么意思微信开发者工具打不开
  • 建站到网站收录到优化通化北京网站建设
  • 网站开发作用wordpress mysuc cms
  • 网站开发人员的职责是什么石家庄外贸建站公司
  • 内外外贸购物网站建设网站顶部下拉广告
  • 深圳企业网站建设服务平台销售推广语
  • 做网站要什么资料百度网盘登录
  • 聚牛网站建设公司北京seo优化推广
  • 成都网站公司网站建设东莞大岭山电子厂
  • python建立简易网站网站界面设计的分类有哪几种
  • 网络规划师考哪些内容优化设计卷子答案
  • 邢台网站关键词优化wordpress弹窗下载
  • 晋城市企业网站腾讯qq官网登录入口
  • 怎么给网站在百度地图上做爬虫一家专门做灯的网站
  • 河南焦作有做网站开发的公司吗xampp安装wordpress
  • python购物网站开发流程图win淘宝客wordpress主题模板
  • 江苏省建设执业网站个人做淘宝客网站有哪些
  • 浙江省建设厅门户网站咨询公司是干什么的
  • 哪个网站上可以做初中数学题wordpress 网校插件
  • html写手机网站制作网页用什么语言