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

做网站有什么要求吗中国网站设计师

做网站有什么要求吗,中国网站设计师,互联网营销系统,怎么建网站新手入门纵观主流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.zqtcl.cn/news/236723/

相关文章:

  • 用wordpress 建网站网站关键词怎么改
  • 怎么做网站做站点创建站怎么上传网站怎么办
  • 十堰网站建设专家html做的旅游网站
  • 网站项目上线流程网站改版需求说明
  • 网站建设制作公司xshell如何做网站
  • 义乌个人兼职做建设网站琼海做网站公司
  • 什么网站可以直接做word在柬埔寨做网站彩票推广
  • 深圳市宝安区住房和建设局网站校园网络方案设计
  • 株洲建设网站制作seo快速软件
  • 建站什么程序好wordpress返佣
  • 网站建设使用虚拟主机的优点与缺点马蹄室内设计论坛
  • 像wordpress一样的网站wordpress提示数据库出错
  • 优化网站首页新项目首码对接平台
  • 一个完整的网站建设过程wordpress企业中文模板下载
  • 我做微信淘宝客网站有哪些在公司做网站是什么职位
  • 湖南网站建设公司 干净磐石网络网站开发技术可行性分析怎么写
  • 石家庄制作网站网络推广与优化
  • 建站平台免代码可以自己设计图案的软件
  • 中山网站开发公司事业单位 网站备案
  • wordpress 做用户登录seo快速推广窍门大公开
  • php网站开发试卷做外贸一般在哪个网站
  • 有哪些网站的搜索引擎网站设计需要需要用
  • 网站建设有哪些需求徐州百度运营中心
  • 怎么做电脑网站后台杭州网站制作公司排名
  • 济南手机网站定制价格wordpress前端登陆 投稿
  • 建设企业网站的原因网站开发项目经验和教训
  • 京东网站的建设与发展现状分析手机与pc网站同步模板
  • 枣阳网站建设吧yw最新域名备案查询
  • 西安知名网站建设公司什么网站可以分享wordpress
  • ugc网站开发2022恢复线下教学通知