jquery 点点滴滴小记

字符截取显示
var text = $(".content").text();
var textNum = text.length;
var textInt = text.slice(0,140);
$(".content").each(function () {
if (textNum >= 160) {
$(this).html(textInt + "…" + "详细")
$(".dis_btn").click(function () {
$(".content").text(text);
});
return false;
} else {
$(".content").each(function () {
$(this).text(text);
})
}
})

div做链接
$(".pane-list li").click(function(){
    window.location=$(this).find("a").attr("href");return false;
});

简单的炸屏效果
$(document).ready(function(){
setTimeout("showBanner();",5000);
});
function showBanner(){
$(".banner p:eq(0)").slideUp(1000,function(){$(".banner p:eq(1)").slideDown(1000);});
}

单条滚动的新闻写法1
function scroll_news(){
$(function(){
      $(‘#dvmq li‘).eq(0).fadeOut(‘slow‘,function(){
    // alert($(this).clone().html());

//克隆:不用克隆的话,remove()就没了。
            $(this).clone().appendTo($(this).parent()).fadeIn(‘slow‘);
            $(this).remove();
        });
     });
}
setInterval(‘scroll_news()‘,1000);

单条滚动的新闻写法2
function AutoScroll(obj){
$(obj).find("ul:first").animate({
marginTop:"-25px"
},1000,function(){
$(this).css({marginTop:"0px"}).find("li:first").appendTo(this);
});
}
$(document).ready(function(){
setInterval(‘AutoScroll("#scrollDiv")‘,3000)
});

验证QQ号码
var qq=/^[1-9]\d{4,8}$/;
var user_qq =$("#user_qq").val()
if(!qq.test(user_qq)){
alert("请输入正确的QQ");
return false;
}

验证邮编
var linkzipcode =$(".form input[name=‘linkzipcode‘]").val();
var zipcode=/\d{6}/
if(!zipcode.test(linkzipcode)){
alert("请输入正确的邮编");
return false;
}

验证手机号码
    var reg0=/^13\d{9}$/;
    var reg1=/^153\d{8}$/;
    var reg2=/^159\d{8}$/;
    var reg3=/^158\d{8}$/;
    var reg4=/^150\d{8}$/;
var phone=reg0||reg1||reg2||reg3||reg4
var linkphone =$(".form input[name=‘linkphone‘]").val();
if(!phone.test(linkphone)){
alert("请输入正确的手机号码");
return false;
}

验证中文
var isChn = /^[\u4e00-\u9fa5]+$/i
var linkname =$(".form input[name=‘linkname‘]").val();
if(!isChn.test(linkname)){
alert("请输入真实的联系人名称");
return false;
}

jquery实现div等高效果
function SetSameHeight(obj1,obj2)
{
     var h1 = $(obj1).outerHeight(); //获取对象1的高度
     var h2 = $(obj2).outerHeight();  //获取对象2高度
     var mh = Math.max( h1, h2); //比较一下
     $(obj1).height(mh);
     $(obj2).height(mh);
}
在页面用调用:
jQuery(document).ready(function($) {
    SetSameHeight(".left",".line");
    SetSameHeight(".right_main",".line");//如果有3个div 就加这一行代码,再适应一次.
}

使用jquery操作iframe
iframe id="leftiframe"
iframe id="mainiframe
leftiframe中jQuery改变mainiframe的src代码:
$("#mainframe",parent.document.body).attr("src","http://www.radys.cn")

JQuery获取浏览器窗口的高度和宽度
$(document).ready(function(){
alert($(window).height()); //浏览器时下窗口可视区域高度
alert($(document).height()); //浏览器时下窗口文档的高度
alert($(document.body).height());//浏览器时下窗口文档body的高度
alert($(document.body).outerHeight(true));//浏览器时下窗口文档body的总高度包括border padding margin
alert($(window).width()); //浏览器时下窗口可视区域宽度
alert($(document).width());//浏览器时下窗口文档对于象宽度
alert($(document.body).width());//浏览器时下窗口文档body的高度
alert($(document.body).outerWidth(true));//浏览器时下窗口文档body的总宽度包括border padding margin1
})

jQuery 离开页面时提示
//绑定beforeunload事件
$(window).bind(‘beforeunload‘,function(){
    return ‘您输入的内容尚未保存,确定离开此页面吗?‘;
});
//解除绑定
$(window).unbind(‘beforeunload‘);

图片不完全按比例自动缩小
jQuery(document).ready(function(){
$(window).load(function(){
$(‘#content img‘).each(function(){
var x = 200; //填入目标图片宽度
var y = 140; //填入目标图片高度
var w=$(this).width(), h=$(this).height();//获取图片宽度、高度
if (w > x) { //图片宽度大于目标宽度时
var w_original=w, h_original=h;
h = h * (x / w); //根据目标宽度按比例算出高度
w = x; //宽度等于预定宽度
if (h < y) { //如果按比例缩小后的高度小于预定高度时
w = w_original * (y / h_original); //按目标高度重新计算宽度
h = y; //高度等于预定高度
}
}
$(this).attr({width:w,height:h});
});
});
});

jQuery得到用户IP
$.getJSON("http://jsonip.appspot.com?callback=?", function (data) {
    alert("Your ip: " + data.ip);
});

jQuery查看图片的宽度和高度
var theImage = new Image();
theImage.src = $(‘#imageid‘).attr("src");
alert("Width: " + theImage.width);
alert("Height: " + theImage.height);

jQuery控制IFRAME 父页面控制子窗口
DOM方法:
父窗口操作 IFRAME:window.frames["iframeSon"].document
IFRAME操作父窗口: window.parent.document
jquery方法:
在父窗口中操作 选中IFRAME中的所有输入框: $(window.frames["iframeSon"].document).find(":text");
在IFRAME中操作 选中父窗口中的所有输入框:$(window.parent.document).find(":text");
iframe框架的HTML:iframe src="test.html" id="iframeSon" width="700″ height="300″ frameborder="0″ scrolling="auto"
细心的朋友一下就能理解,原理其实很简单,就是用到了$(DOM对象)转换成 jquery对象。
用jQuery在IFRAME里取得父窗口的某个元素的值
只好用DOM方法与jquery方法结合的方式实现了
1.在父窗口中操作 选中IFRAME中的所有单选钮
$(window.frames["iframe1"].document).find("input[@type=‘radio‘]").attr("checked","true");
2.在IFRAME中操作 选中父窗口中的所有单选钮
$(window.parent.document).find("input[@type=‘radio‘]").attr("checked","true");
iframe框架的:
iframe src="test.html" id="iframe1″ width="700″ height="300″ frameborder="0″ scrolling="auto"
IE7中测试通过
jquery判断是否滚动到最后一个
var $next =  $current.next().length ? $current.next() : $("#slideshow div:first");

jquery仿淘宝搜索滚动固定
$(function(){
var s= $(‘#nav‘).position().top;
var t=80;
$(window).scroll(function (){
if($(window).scrollTop()>215)
{
$("#nav").animate({top:$(window).scrollTop()-t+"px"},{queue:false,duration:400});
}else{
$("#nav").animate({top:$(window).scrollTop()+s+"px"},{queue:false,duration:400});
}
});
//nav必须用position:absolute;nav的父容器必须position:relative;
})

jquery修复IE position:fixed
function fixedPosition (element,top,right){
$(element).css("display","block")
if(!$.browser.msie){
$(element).css("position","fixed")
    }else{
$(element).css("position","absolute")
$("body").css({"height":"100%","overflow":"auto","margin":"0″});
$("html").css({"overflow-x":"auto","overflow-y":"hidden"});
}
$(element).css({"top":top,"right":right})
};
$(function(){
fixedPosition(test,150 ,40);
})
方法2
#fixed {
position: fixed;
_position: absolute;
bottom: 0;
right:0.75em;
top:20%;
}

(function(){
var overlay = document.getElementById(‘fixed‘),t;
window.onscroll = function() {
t && clearTimeout(t);
t = setTimeout(function() {
var t=document.documentElement.scrollTop;
 t=t+156;
overlay.style.top=t+"px";
},0);
};
})();

jquery each 遍历常用方法
下面提一下jQuery的each方法的几种常用的用法
Js代码
 var arr = [ "one", "two", "three", "four"];
 $.each(arr, function(){
    alert(this);
 });
//上面这个each输出的结果分别为:one,two,three,four    

var arr1 = [[1, 4, 3], [4, 6, 6], [7, 20, 9]]
$.each(arr1, function(i, item){
   alert(item[0]);
});
//其实arr1为一个二维数组,item相当于取每一个一维数组,
//item[0]相对于取每一个一维数组里的第一个值
//所以上面这个each输出分别为:1   4   7    

var obj = { one:1, two:2, three:3, four:4};
$.each(obj, function(key, val) {
    alert(obj[key]);
});
//这个each就有更厉害了,能循环每一个属性
//输出结果为:1   2  3  4 

还可以省略function的参数,这个时候this可以得到遍历的当前元素的值
var arr = [9, 8, 7, 6, 5, 4, 3, 2, 1];
       $.each(arr, function() { alert(this); });

js 判断浏览器是否启用cookie
$(document).ready(function () {
    document.cookie = "cookieid=1; expires=60″;
    var result = document.cookie.indexOf("cookieid=") != -1;
    if (!result) {
        alert("浏览器未启用cookie");
    }
});

jQuery检测键盘按键
$(document).ready(function () {
    $(this).keypress(function (e) {
        switch (e.which) {
            case 13:
                alert("您按下了回车键");
                break;
            //more detect
        }
    });
});

jQuery 滚动到顶部/底部
//滚动到顶部
$("html, body").animate({ scrollTop: "0px" }, 1000);
//滚动到底部
//$("#container"):要滚动的元素
$("html, body").animate({
    scrollTop: $("#container").height()
}, 1000);

jQuery 判断元素是否存在
怎么使用 jQuery 判断元素是否存在,相信不少 jQuery 学习者都会问这个问题,方法很简单,如下:
if ($(" #elementid").length) {
    //元素存在
}

jQuery 禁用鼠标右键
$(document).ready(function() {
    $(document).bind("contextmenu", function() {
        return false;
    });
});

向由setTimeout()调用的方法中传参
$(document).ready(function() {
    timeout = setTimeout(function() {
        showMess("succeed")
    }, 2000);
});
function showMess(m) {
    alert(m);
}

jQuery 倒计时
$(document).ready(function () {
    var count = 10;
    countdown = setInterval(function () {
        $("p.countdown").html(count + " 秒后将跳转!");
        if (count == 0) {
            clearInterval(countdown)
            window.location = ‘http://google.com‘;
        }
        count–;
    }, 1000);
});

jQuery 判断浏览器类型及版本号
jQuery 判断浏览器类型及版本号非常简单,可以直接使用 $.browser 方法进行判断。但我自己试验时发现在判断 Chrome 浏览器时,返回的是 Safari,在网上找了下,于是有了下边的代码:
var browserName = navigator.userAgent.toLowerCase();
mybrowser = {
    version: (browserName.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [0, ‘0‘])[1],
    safari: /webkit/i.test(browserName) && !this.chrome,
    opera: /opera/i.test(browserName),
    firefox: /firefox/i.test(browserName),
    msie: /msie/i.test(browserName) && !/opera/.test(browserName),
    mozilla: /mozilla/i.test(browserName) && !/(compatible|webkit)/.test(browserName) && !this.chrome,
    chrome: /chrome/i.test(browserName) && /webkit/i.test(browserName) && /mozilla/i.test(browserName)
}
$(document).ready(function () {
    if (mybrowser.msie) {
        alert("浏览器为:Internet Explorer 版本号为:" + $.browser.version);
    }
    else if (mybrowser.mozilla) {
        alert("浏览器为:Firefox 版本号为:" + $.browser.version);
    }
    else if (mybrowser.opera) {
        alert("浏览器为:Opera 版本号为:" + $.browser.version);
    }
    else if (mybrowser.safari) {
        alert("浏览器为:Safari 版本号为:" + $.browser.version);
    }
    else if (mybrowser.chrome) {
        alert("浏览器为:Chrome 版本号为:" + mybrowser.version);
    }
    else {
        alert("神马");
    }
});

jQuery 元素居中显示
//写成了插件形式
(function ($) {
    jQuery.fn.center = function () {
        this.css(‘position‘, ‘absolute‘);
        this.css(‘top‘, ($(window).height() – this.height()) /2 +$(window).scrollTop() + ‘px‘);
        this.css(‘left‘, ($(window).width() – this.width()) / 2 + $(window).scrollLeft() + ‘px‘);
        return this;
    }
})(jQuery);
$(document).ready(function () {
    //调用
    $("#somediv").center();
});

jQuery 判断图像是否被完全加载进来
$("#demoImg").attr("src", "demo.jpg").load(function() {
    alert("图片加载完成");
}); 

jQuery仿微博字数统计功能
jq(‘#content‘).bind(‘focus keyup input paste‘,function(){  //采用几个事件来触发(已增加鼠标粘贴事件)
jq(‘#num‘).text(140 – jq(this).attr("value").length)  //获取评论框字符长度并添加到ID="num"元素上
});

jQuery 实现左右两列一样高
$(function () {
    var left = $(‘#left‘).height();
    var right = $(‘#right‘).height();
    left > right ? $(‘#right‘).height(left) : $(‘#left‘).height(right);
});

jQuery 操作 select 小结
//移除value为"2″的option
$("#id option[value=‘2‘]").remove();
//获取select option选中值
$("#id").val();
//设置value为"2″的option为当前选中
$("#id").val("2″);
//获取select option选中text
$("#id :selected").text()

Javascript 实现字符串补"0″
join() 方法用于把数组中的所有元素放入一个字符串,元素是通过指定的分隔符进行分隔的,缺省时为逗号(",")。
function padZero(str, length) {
    var strLen = str.length;
    return length > strLen ? new Array(length – strLen + 1).join("0″) + str : str;
}

jQuery 双击时不选中文本
//清理选中
var clearSelection = function () {
    if (document.selection && document.selection.empty) {
        document.selection.empty();
    }
    else if (window.getSelection) {
        var sel = window.getSelection();
        sel.removeAllRanges();
    }
}
$("#content").dblclick(function(e) {
    clearSelection();
});

jQuery 选中文本框值和取消选中
当光标移动到文本框上边时,将文本框的值选中,离开时取消选中,这样方便了用户修改文本框的值,提高了用户体验。或许你也有兴趣看看 jQuery设置和移除文本框默认值,当然在 HTML5 中我们可直接使用 "placeholder" 属性。
$("input[type=‘text‘]").hover(function () {
    $(this).select();
}, function () {
    $(this).val($(this).val());
});

jquery 点点滴滴小记

时间: 2024-10-29 10:46:39

jquery 点点滴滴小记的相关文章

jquery选择器小记

闲来无聊,搜罗搜罗jQuery选择的基本知识. 好记性不如烂笔头,记下来以备不时之需. 基本选择器 id选择器 --> $('#id') class 选择器 -->  $('.class') 标签选择器  -->  $('span') * 选择器  -->  $('form *')  :便利form下的所有元素 并列选择器  -->  $('span,a')  : 所有的span  和  a 层次选择器 直系子元素  -->$('div > span')  : d

5-15 bootcss 之 modal 以及 jquery ui 之datepicker 小记

最近公司在用bootstrap和Jquery UI做项目,类似与OA的东西前两天碰到点问题,记录一下.希望读者不要在遇到和我一样的问题. 1 datepicker.不知道怎么自己下载的bootcss里面没找到datepicker,于是就选了Jquery UI的datepicker.使用的时候要注意两个问题. 如果页面上多个input ,并且id都是input1,那么在页面载入完成的时候调用$('#input1').datepicker(option),得到的结果是只有第一个成功格式化成datep

JQuery中$.fn、$.extend、$.fn.extend小记

Web开发肯定要使用第三方插件,对于一个炫丽的效果都忍不住想看看对方是如何实现的,刚下载了一个仿京东商品鼠标经过时局部放大的插件.看了两眼JQuery源码,看看就感觉一头雾水.JQuery本来自己学的就半吊子,再加智商又不惊人...当开发插件的时候难免会使用$.fn与$.extend.原来看到这个时候非常抵触,今天再次看到的时候简单的查了查外加一个Demo实验了一下.以下为几分钟补脑后的小记,如有错误请大神急时指出以免误导他人. 进入正题: 1.$.fn.[UserDefinitionName]

学习小记(2015/10/19)——工作中遇见的一个关于jQuery选择器的小要点。

jQuery是现在非常流行的js库,其中封装了很多很酷炫的功能,其中强大的选择器功能是必不可少的.由于jQuery的选择器,我们能够快速的从许多元素中选中我们需要的目标,从而进行后续的工作.今天,我就讲一下jQuery的我使用jQuery遇见的一个小要点. 当时,我使用jQuery是准备将所有页面上的多选框选中,再对其中某一个进行操作.我是这样做的:HTML: <!DOCTYPE html> <html> <head lang="en"> <m

jQuery插件的点点滴滴

说起jQuery插件,很多人的脑海种已经有了一定的雏形,仿佛感觉仅仅就是那样子,事实呢?当你看了Bootstrap.js,品读了slidesjs,观摩了jquery.cycle2.js,不禁发现,原来插件的世界千变万化,细微之处总是不容易让人发觉,世界那么大,那么我们就一起去看看它到底长什么样子? 工欲善其事必先利其器,如果你对于jQuery插件运用熟练的话,那么对已$.extend,你一定要去了解!,下面我们就先对$.extend来个剖析!先看看你对于$.extend的几种形式! 一.$.ex

jQuery中each函数小记

项目中自己在写一个很简单的表单验证的时候,需要遍历所有textarea并判断.因为用jQuery,所以第一反应就是用each函数遍历,当遍历到为空的textarea时,弹出提示并中断js的运行.一开始我是这样写的: 1 input.each(function(){ 2 if($(this).val() == null) 3 { 4 alert("test"); 5 return false; 6 } 7 //其他代码 8 }); 运行之后发现,弹窗会出现,但是之后的代码也运行了,而且遍

JQuery选择器和事件的学习小记

一.前言与基础 JQuery是JavaScript的一个拓展库,能够比原生JavaScript代码更简便地进行HTML页面的DOM操作.要想使用JQuery,必须要在HTML页面引入JQuery的源代码文件. JQuery的源代码文件有两种: compressed&production,编译过并且进行压缩的JQuery文件,用于实际网站开发,编译和压缩能够加快代码加载.文件名一般为jquery-1.10.2.min.js,1.10.2是版本号. uncompressed&developme

javascript 点点滴滴 jquery

1 ;(function(global, factory) { 2 factory(global); 3 }(typeof window !== "undefined" ? window : this, function(window, noGlobal) { 4 var jQuery = function( selector, context ) { 5 return new jQuery.fn.init( selector, context ); 6 }; 7 jQuery.fn

JS、JQuery的一些操作小记

jq: 1..链式操作$('div').find('h3').eq(2).html('hello'); // .eq(2) 选择第3个h3元素 2..end()方法使结果集后退一步: 3.html()没有参数,表示取出h1的值:html()有参数,表示赋值.取值是获取一组的第一个元素,赋值是所有元素. 4.元素移形换位insertAfter().appendTo().after()将x加到y后.append() 5.创建元素var oLi = $('<li>'); oLi.html('hell