一系列提示,帮助您提升jQuery游戏
Posted
tags:
中文标题:一系列提示,帮助您提升jQuery游戏 原文标题:A collection of tips to help up your jQuery game 项目评级:Star:4200 Fork:461 下载地址:https://github.com/AllThingsSmitty/jquery-tips-everyone-should-know 详情介绍jQuery提示每个人都应该知道
一系列简单的提示可以帮助您提升jQuery游戏。
欲了解其他精彩榜单,请查看@sindresorhus精心策划的精彩榜单。
目录
提示
使用noConflict()
jQuery使用的$
别名也被其他JavaScript库使用。为了确保jQuery不会与不同库的$
对象发生冲突,请在文档开头使用noConflict()
方法:
现在,您将使用jQuery
变量名引用jQuery对象,而不是$
(例如,jQuery('div p').hide()
)。如果您在同一页面上有多个版本的jQuery(不推荐),可以使用noConflict()
将别名设置为特定版本:
返回目录
检查是否加载了jQuery
在使用jQuery执行任何操作之前,您首先需要确保它已加载:
现在你离开了。。。
返回目录
检查元素是否存在
在使用HTML元素之前,您需要确保它是DOM的一部分。
返回目录
使用.on()
绑定而不是.click()
使用.on()
比使用.click()
有几个优势,例如可以添加多个事件。。。
…绑定也适用于动态创建的元素(不需要手动绑定动态添加到DOM元素的每个元素)。。。
…以及设置命名空间的可能性:
命名空间使您能够解除特定事件的绑定(例如,.off('click.menuOpening')
)。
返回目录
返回顶部按钮
通过使用jQuery中的animate
和scrollTop
方法,您不需要插件来创建简单的滚动到顶动画:
更改scrollTop
值会更改滚动条所在的位置。您真正要做的就是在800毫秒的过程中为文档的主体设置动画,直到它滚动到文档的顶部。
注意:注意scrollTop
的一些bug行为。
返回目录
预加载图像
如果你的网页使用了很多最初不可见的图像(例如,悬停时),那么预加载它们是有意义的:
返回目录
检查是否加载了图像
有时,您可能需要检查图像是否已完全加载,以便继续使用脚本:
您还可以通过将<img>
标记替换为ID或类来检查是否加载了一个特定的图像。
返回目录
自动修复损坏的图像
如果你碰巧在你的网站上发现损坏的图片链接,一个接一个地替换它们可能会很痛苦。这段简单的代码可以省去很多麻烦:
或者,如果您希望隐藏损坏的图像,此片段将处理以下问题:
返回目录
使用AJAX发布表单
jQueryAJAX方法是请求文本、HTML、XML或JSON的常用方法。如果您想通过AJAX发送表单,您可以通过val()
方法收集用户输入:
但所有val()
的调用都很昂贵,在<textarea>
元素上使用.val()
将从浏览器报告值中删除回车字符。收集用户输入的更好方法是使用serialize()
函数,该函数将用户输入收集为字符串:
返回目录
在悬停状态下切换类
比方说,当用户悬停在页面上时,你想改变页面上可点击元素的视觉效果。当用户悬停时,你可以在元素中添加一个类;当用户停止悬停时,删除类:
您需要添加必要的CSS。如果您想要更简单的方法,请使用toggleClass
方法:
注意:在这种情况下,CSS可能是一个更快的解决方案,但了解这一点仍然值得。
返回目录
禁用输入字段
有时,您可能希望禁用表单的提交按钮或其中一个文本输入,直到用户执行了某个操作(例如,选中“我已经阅读了术语”复选框)。将disabled
属性添加到您的输入中,以便您可以在需要时启用它:
您只需要在输入上再次运行prop
方法,但将disabled
的值设置为false
:
返回目录
停止加载链接
有时你不想链接到某个网页,也不想重新加载页面;您可能希望他们做其他事情,比如触发另一个脚本。这将起到防止默认操作的作用:
返回目录
缓存jQuery选择器
想想你在任何项目中一遍又一遍地写同一个选择器的次数。每个$('.element')
选择器每次都必须搜索整个DOM,无论该选择器是否为h
广告之前运行过。相反,您可以运行一次选择器,并将结果存储在一个变量中:
现在,您可以在任何地方使用blocks
变量,而不必每次都搜索DOM:
缓存jQuery选择器是一个很好的性能增益。
返回目录
切换淡入淡出/滑动
滑动和淡入淡出在使用jQuery的动画中很常见。当用户点击某个东西时,你可能想显示一个元素,这使得fadeIn
和slideDown
的方法非常完美,但如果你想让该元素在第一次点击时出现,然后在第二次点击时消失,这会很好:
返回目录
简单手风琴
这是一个快速手风琴的简单方法:
通过添加这个脚本,您在网页上真正需要做的就是使用必要的HTML来实现这一点。
返回目录
使两个潜水高度相同
有时,无论两个div中有什么内容,您都希望它们具有相同的高度:
本例设置min-height
,这意味着它可以大于主div,但不能小于主div。然而,一种更灵活的方法是在一组元素上循环,并将height
设置为最高元素的高度:
如果希望所有列具有相同的高度:
注意:这可以在CSS中通过多种方式实现,但根据您的需求,知道如何在jQuery中实现这一点很方便。
返回目录
在新选项卡/窗口中打开外部链接
在新的浏览器选项卡或窗口中打开外部链接,并确保在同一选项卡或窗口打开同一原点上的链接:
注:window.location.origin
在IE10中不起作用。此修复程序解决了此问题。
返回目录
按文本查找元素
通过使用jQuery中的contains()
选择器,您可以在元素的内容中找到文本。如果文本不存在,则该元素将被隐藏:
返回目录
可见性更改触发
当用户不再关注选项卡或重新关注选项卡时触发JavaScript:
返回目录
AJAX调用错误处理
当AJAX调用返回404或500错误时,将执行错误处理程序。如果没有定义处理程序,其他jQuery代码可能无法按预期工作。要定义全局AJAX错误处理程序:
返回目录
链插件调用
jQuery允许插件方法调用的“链接”,以减轻重复查询DOM和创建多个jQuery对象的过程。假设以下代码段代表您的插件方法调用:
这可以通过使用链接得到极大的改进:
另一种选择是将元素缓存在变量中(前缀$
):
jQuery中的链接和缓存方法都是最佳实践,可以使代码更短、更快。
返回目录
按字母顺序排序列表项
假设你最终在一个列表中有太多的项目。也许内容是由CMS制作的,你想按字母顺序排列:
给你!
返回目录
禁用右键单击
如果你想禁用右键单击,你可以对整个页面禁用。。。
…并且您也可以对特定元素执行相同操作:
返回目录
支持
Chrome、Firefox、Safari、Opera、Edge和IE11的当前版本。
返回目录
翻译
返回目录
使用全新 Play Developer Reporting API,持续提升应用和游戏品质