锋利的jQuery——19个jQuery 常用片段整理
/**
* Created by yu on 2016/11/20 0020.
*/
// 1.禁用页面右键菜单
$(function () {
$(document).on('contextmenu', function (e) {
return false;
});
}); // 2.在新窗口打开页面
$(function () {
// 针对 href=http的超链接
$('a[href^="http://"]').attr('target', '_blank');
// 针对rel=external的超链接
$('a[rel$="external"]').click(function () {
this.target = '_blank';
});
}); // 3.输入框文字获取和失去焦点
$(function () {
$('.text1').val('输入你要搜索的文字');
textFill($('input.text1'));
function textFill(input) {
var originalValue = input.val();
input.focus(function () {
if (input.val() === originalValue) {
input.val('');
}
}).blur(function () {
if (input.val() === '') {
input.val(originalValue);
}
});
}
}); // 4.返回顶部
$('#goheader').click(function () {
$('html,body').animate({scrollTop: 0}, 600);
return false;
}); // 5.获取鼠标位置
$(function () {
$(document).mousemove(function (e) {
$('#xy').html('X:' + e.pageX + '| Y:' + e.pageY);
});
}); // 6.判断元素是否存在
$(function () {
if ($('#id').length) {
window.alert('id 元素存在');
}
}); // 7.点击div也可以跳转
$('div').click(function () {
window.location = $(this).find('a').attr('href');// window.location可以简单理解为浏览器访问的地址
return false;
}); // 8.根据浏览器大小添加不同的样式
$(document).ready(function () {
function checkWindowSize() {
if ($(window).width() > 1200) {
$('body').addClass('large');
} else {
$('body').removeClass('large');
}
}
$(window).resize(checkWindowSize);// 当浏览器大小改变时再次出发checkWindowsSize
}); // 9.设置div在屏幕中央
$(function () {
jQuery.fn.center = function () {
this.css('position', 'absolute');
this.css('top', ($(window).height() - this.height()) / 2 + $(window).scrollTop() + 'px');// 使用scrollTop来获取元素相对于顶部的偏移量
this.css('left', ($(window).width() - this.width()) / 2 + $(window).scrollLeft() + 'px');
return this;
};
$('#xy').center();
}); // 10.关闭所有动画效果
$(function () {
$.fx.off = true;
}); // 11.检测鼠标右键和左键
$(function () {
$('#xy').mousedown(function (e) {
window.alert(e.which);// 1为左键,2为中键,3为右键
});
}); // 12.回车提交表单
$(function () {
$('input').keyup(function (e) {
if (e.which === '13') { // 回车键为13
window.alert('回车提交');
}
});
}); // 13.设置全局Ajax参数
$('#load').ajaxStart(function () {
showLoading();// 显示loading
disableButton();// 禁用按钮
});
$('#load').ajaxComplete(function () {
hideLoading();// 隐藏loading
enableButtons();// 启用按钮
}); // 14.获取选中的下拉框
$(function () {
$('#mySelect').find('option:selected');
$('#mySelect option.selected');
}); // 15.切换复选框
$(function () {
var tog = false;
$('toggleButton').click(function () {
$('input[type=checkbox]').attr('checked', !tog);
tog = !tog;
});
}); // 16.使用siblings()来选择同辈元素
$('nav li').click(function () {
$(this).addClass('active')
.siblings().removeClass('active');
}); // 17.个性化链接,为不同的文件下载链接添加不同样式
$(function () {
$("a[href$='zip']").addClass('zip');
$("a[href$='pdf']").addClass('pdf');
$("a[href$='psd']").addClass('psd');
}); // 18.在一段时间之后自动隐藏或关闭元素
$(function () {
setTimeout(function () {
$('#tempElement').fadeOut(600);// 600毫秒的动画
}, 3000);// 3000毫秒后自动隐藏
$('#tempElement').slideDown(300).delay(3000).fadeOut(600);// 也可以使用delay()来实现啊
}); // 19.为任何与选择器相匹配的元素绑定事件
// 为table中的td绑定click事件
$(function () {
$('table').on('click', 'td', function () {
$(this).toggleClass('hover');
});
});
锋利的jQuery——19个jQuery 常用片段整理的更多相关文章
- js/jquery/html前端开发常用到代码片段
1.IE条件注释 条件注释简介 IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法.条件注释只能用于IE5以上,IE ...
- 锋利的jQuery读书笔记---jQuery中Ajax--序列化元素、Ajax全局事件
serialize()方法: 作用于一个jQuery对象,它能够将DOM元素内容序列化为字符串,用于Ajax请求. <!DOCTYPE html> <html> <hea ...
- 不可错过的10个超棒jQuery表单操作代码片段
jQuery 绝对是一个伟大的开源javascript类库,是帮助我们快速和高效开发前端应用的利器.可能大家在日常的开发过程中常常会处理表单相关的 javascript,在今天这篇代码片段分享文章中, ...
- js进阶 13-6 jquery动画效果相关常用函数有哪些
js进阶 13-6 jquery动画效果相关常用函数有哪些 一.总结 一句话总结:animate(),stop(),finish(),delat()四个. 1.stop()方法的基本用法是什么(sto ...
- JavaScript(19)jQuery HTML 获取和设置内容和属性
jQuery HTML jQuery 拥有可操作 HTML 元素和属性的强慷慨法. jQuery DOM 操作 jQuery 中非常重要的部分,就是操作 DOM 的能力.jQuery 提供一系列与 D ...
- Drupal学习(19) 使用jQuery
本节学习如果在Drupal里交互使用jQuery. jQuery在Drupal是内置支持的.存在根目录的misc目录中. 当调用drupal_add_js方法,会自动加载jQuery. 在Drupal ...
- 锋利的JS解读——认识JQuery(一)
一.jQuery的发展 随着javascript的不断发展,延伸出了多种JS程序库,当前比较流行的js库有:1)Prototype 成型较早,从整体上对面向对象的编程思想把握的不是很到位. 2)Do ...
- JQuery插件之【jqGrid】常用语法整理
jqGrid常用语法整理,包含数据获取.常用函数.触发事件等 jqGrid表格数据获取相关语法 获取表格所有数据 $("#grid").jqGrid("getRowDat ...
- 使用 jQuery UI 和 jQuery 插件构建更好的 Web 应用程序
简介: 对于那些使用 JavaScript 和 jQuery 库从桌面应用程序转向 Web 应用程序的开发人员来说,他们还不习惯去考虑应用程序基本的外观,因为这些以前都是由操作系统来处理的.了解 jQ ...
随机推荐
- 小清新cygwin,正在诞生中
正文保留. 评论记录点滴.最后汇总.
- 阿里云安装Tomcat
1.Apache官方网站下载Tomcat http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.0.35/bin/apache-tomcat-8.0 ...
- NFS 网络文件系统挂载在A8板子上
我承认自己是菜鸟,没什么网络知识就来搞挂载nfs网络文件系统,花费了5天的时间才把nfs网络文件系统成功挂载在A8板子上,实现了A8板子和虚拟机的文件共享.分享一下个人经验: 以下是基于nfs已经完成 ...
- wpf 报错: 在 AddNew 或 EditItem 事务过程中不允许“DeferRefresh”。
今天修改Bug的时候遇到一个问题: datagrid 设置了双击事件,双击弹出一个窗口,在多次点击后报错:在 AddNew 或 EditItem 事务过程中不允许“DeferRefresh” 网上查了 ...
- DB2 错误信息码
000 00000 SQL语句成功完成 01xxx SQL语句成功完成,但是有警告 +012 01545 未限定的列名被解释为一个有相互关系的引用 +098 01568 动态SQL语句用分号结束 +1 ...
- js 经典正则判断 一个字符串是否包含另一个字符串
if (!new RegExp(list_table[i].value.split("—")[0]).test(lhtj)) { }判断在lhtj中是否包含list_table[i ...
- java中String的一些方法
1.public String(char[] c,begin,length). 从字符数组c的下标begin处开始,将长度为length的字符数组转换为字符串. begin与length可以省略,即将 ...
- 工作随笔——UIButton的EdgeInsets + Swift中的正则表达式;
1.UIButton的EdgeInsets UIButton的EdgeInsets方法,是用来设置title和image对于上左下右四个方向的偏移,但是很奇怪的是,刚开始只有Image,titile也 ...
- step by step设置postgresql用户密码并配置远程连接
设置pgsql默认用户posgres的密码 1.确认pgsql是开启的 /etc/init.d/postgresql status 2.使用默认用户登录 sudo su postgres 3.进入ps ...
- mysql 备份软件 Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别
今天在操作 innobackupex 的时候,执行 change master to 的时候发现 xtrabackup_binlog_pos_innodb xtrabackup_binlog_i ...