jQuery 使用收集

简介:

jQuery - 中文輸入法與KeyDown/KeyPress事件

JavaScript数组采用从0开始, eq(1)取得的是集合中的第二个元素;

CSS 则是从1开始,css选择符$('div:nth-chind(1)')取得的是作为其父元素第一个子元素的所有div

 

替换logo图片:

$("#blogLogo").attr("src","logo.png");

 

button替换成image类型: 

代码:

$("#btnZzk").hide(); 
$(".div_my_zzk").append($("<input />").attr("type","image").attr("src","spacer.gif").click(function(){  zzk_go();   }

 

原来: 
<DIV class=div_my_zzk>

<INPUT type=text id=q onKeyDown="return zzk_go_enter(event);" class=input_my_zzk >&nbsp;

<INPUT id=btnZzk class=btn_my_zzk onclick=zzk_go() value=找找看 type=button>

</DIV>

效果:

<DIV class=div_my_zzk>

<INPUT type=text id=q onkeydown="return zzk_go_enter(event);"  class=input_my_zzk >&nbsp;

<INPUT style="DISPLAY: none" id=btnZzk class=btn_my_zzk onclick=zzk_go() value=找找看 type=button >

<INPUT src="spcaer.gif" width=1 height=1 type=image >

</DIV>

 

在div后面追加div:

var divbottom="<div class=box-bottom></div>"; 
  $(".mySearch").append(divbottom); 
  $(".catListPostCategory").append(divbottom); 
  $(".catListPostArchive").append(divbottom); 
  $(".catListEssay").append(divbottom); 
  $(".catListBlogRank").append(divbottom); 
  $(".catListComment").append(divbottom); 
  $(".catListView").append(divbottom); 
  $(".catListFeedback").append(divbottom); 


在每个tr里面的第二个表格 也就是表格的第二列 加一个name属性 如 <TD name=artTitle>183 </TD>

<TR> 
<TD>182</TD> 
<TD>183</TD> 
<TD>184</TD> 
</TR>

代码:

$("tr td:nth-child(2)").each(function(){ $(this).attr("name","artTitle")  });


 

line-height:0; 
font-size:0; 
overflow:hidden; 

能完美“隐藏”掉你background之上的字体

  
//禁止提交两次

 

 <script>

  function autoSubmit()
 {
 <%= ClientScript.GetPostBackEventReference(btnSaveChanges, "") %>;
 }
     $( function () {

           $("#<%= btnSaveChanges.ClientID %>").click( function () {
             $( this).attr("disabled", "true");
             autoSubmit();
            
              return  false;
         });
     });
</script>

 

 

jquery实现锚点跳转平滑滚动效果

<div id="control" style="position:fixed;top:0px;">
	<a rel="#top">头部</a><br/><a rel="#center">中部</a><br/><a rel="#bottom">底部</a>
</div>
$(function(){ $("#control a").click(function(){ var rel=$(this).attr("rel"); var pos=$(rel).offset().top; $("html,body").animate({scrollTop:pos}, 800); }) }) 

 

 
//仿大众点评导航
$('#G_chan-panel').delegate("li","mouseenter", function() { $(this).addClass("active") });
$('#G_chan-panel').delegate("li","mouseleave", function() { $(this).removeClass("active") });

 

 

小结:对于小于 1e-6 的数值来说,ToString 时会自动转换为科学计数法。因此 parseInt 方法,在参数类型不确定时,最好封装一层:

function parseInt2(a) {
    if(typeof a === 'number') {
        return Math.floor(a);
    }
    return parseInt(a);
}

 

 

/* 修复IE6以下版本PNG图片Alpha */ 

function fixpng()
{
  var arVersion = navigator.appVersion.split("MSIE")
  var version = parseFloat(arVersion[1])

  if ((version >= 5.5) && (document.body.filters))
  {
     for(var i=0; i<document.images.length; i++)
     {
        var img = document.images[i]
        var imgName = img.src.toUpperCase()
        if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
        {
           var imgID = (img.id) ? "id='" + img.id + "' " : ""
           var imgClass = (img.className) ? "class='" + img.className + "' " : ""
           var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
           var imgStyle = "display:inline-block;" + img.style.cssText
           if (img.align == "left") imgStyle = "float:left;" + imgStyle
           if (img.align == "right") imgStyle = "float:right;" + imgStyle
           if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
           var strNewHTML = "<span " + imgID + imgClass + imgTitle
           + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
           + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
           + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
           img.outerHTML = strNewHTML
           i = i-1
        }
     }
  }
}

 

 
// 功能:回车自动切换输入框焦点,如果跟在后面的是button则自动点击 

function enterEventHandler(e) {
    var event = $.event.fix(e); //修正event事件
    var element = event.target; //jQuery统一修正为target
    var buttons = "button,reset,submit"; //button格式
    if (element.nodeName == "INPUT" || element.nodeName == "SELECT") {
        event.stopPropagation(); //取消冒泡
        event.preventDefault(); //取消浏览器默认行为
        var inputs = $("input[type!='hidden'][type!='checkbox'][type!='radio'],select"); //获取缓存的页面input集合
        var index = inputs.index(element); //当前input位置        
        if (buttons.indexOf(inputs[index + 1].type) >= 0) {
            inputs[index + 1].focus();
            inputs[index + 1].click();
        }
        else {
            inputs[index + 1].focus();
        }

    }
}

 

 

注册网站信息时一般表现形式为注册协议,外加input type=check和input type=submit,使用check是否选中来判断submit是否可用,代码如下: 

<input type="checkbox" id="chk" name="chk"
 onclick="document.form.submit.disabled=(document.form.chk.checked==true)?false:true" value="1" />
同意本协议 
 <input type="submit" value="确认注册" id="submit" name="submit" disabled="true" />

 

javascript点亮当前页面所在导航

// 判断页面所在栏目并突出栏目导航亮 
function menuHere(menuobj) { 
var links = menuobj.getElementsByTagName(“a”); 
for(i=0; i 
<links.length; i++) { 
if(window.location.href.toLowerCase().indexOf(links[i].href.toLowerCase()) != -1)
{
//比较导航连接地址与页面所在地址(注意大小写) links[i].className = ‘here’;//突出当前导航样式 } else { if(window.location.href == ‘http://’ + window.location.host + ‘/’ ) { //处理默认首页 for(h=0;h<1; h++) { links[h].className = ‘here’; } } } } } window.onload=function () { var menuobj = document.getElementById(‘menu’); if(!menuobj) return false; menuHere(menuobj); }
 
<div class="mainnav">
    <ul class="banner">
       <li class="index"><a href=>首页</a></li>
       <li class="index"><a href=>A</a></li>
       <li class="index hover"><a href=>B</a></li>
        <li class="index"><a href=>C</a></li>
       <li class="index"><a href=>D</a></li>
      <li class="index"><a href=>E</a></li>
   </ul>
一小段C#代码,用来得到URL的HOST的部分
    <%   string aa = Request.Url.AbsolutePath;  %>

<script type="text/javascript">
        $(function() {
$(".mainnav>.banner").find("li").find("a[href$='<%=aa%>']").closest("li")
.addClass("hover").siblings().removeClass("hover")
        });
    </script>


图片放大箱子

<script type="text/javascript">
  jQuery.noConflict();
  jQuery(function(){
        jQuery.fn.getTitle = function() {
      var arr = jQuery("a.fancybox");
      jQuery.each(arr, function() {
        var title = jQuery(this).children("img").attr("title");
        jQuery(this).attr('title',title);
      })
    }
    // Supported file extensions
    var thumbnails = 'a:has(img)[href$=".bmp"],a:has(img)[href$=".gif"],a:has(img)[href$=".jpg"],
a:has(img)[href$=".jpeg"],a:has(img)[href$=".png"],a:has(img)[href$=".BMP"],
a:has(img)[href$=".GIF"],a:has(img)[href$=".JPG"],a:has(img)[href$=".JPEG"],a:has(img)[href$=".PNG"]'
; jQuery(thumbnails).addClass("fancybox").attr("rel","fancybox").getTitle(); jQuery("a.fancybox").fancybox({ 'imageScale': true, 'padding': 10, 'zoomOpacity': false, 'zoomSpeedIn': 500, 'zoomSpeedOut': 500, 'overlayShow': true, 'overlayOpacity': 0.7, 'hideOnContentClick': false, 'centerOnScroll': true }); }) </script>

  

jQuery - 中文輸入法與KeyDown/KeyPress事件 

 

Cross browser input event for jQuery

 

 

在iframe子页面获取父页面元素: $('#objId', parent.document); 

在父页面 获取iframe子页面的元素: $("#objid",document.frames('iframename').document)

 

 

 

序列化: 

 
$('#Select1').change(function () {
 //Example 1
 alert(  $(this).serialize());  //结果 Select3=230000
})
 
<select id="Select1" class="Select2"  name="Select3">
<option value="">hhh</option>
<option value="110000">北京市</option>
<option value="120000">天津市</option>
<option value="130000">河北省</option>
<option value="140000">山西省</option>
<option value="150000">内蒙古自治区</option>
<option value="210000">辽宁省</option>
<option value="220000">吉林省</option>
<option value="230000">黑龙江省</option>
<option value="310000">上海市</option>
<option value="320000">江苏省</option>
</select>


 
//异步验证用户名是否存在
<script type="text/javascript">
$(document).ready(function() {
    $('#usernameLoading').hide();
    $('#username').blur(function(){
      $('#usernameLoading').show();
      $.post("check.php", {
        username: $('#username').val()
      }, function(response){
        $('#usernameResult').fadeOut();
        setTimeout("finishAjax('usernameResult', '"+escape(response)+"')", 400);
      });
        return false;
    });
});
 
function finishAjax(id, response) {
  $('#usernameLoading').hide();
  $('#'+id).html(unescape(response));
  $('#'+id).fadeIn();
} //finishAjax
</script>
 
 
//html
<p><label for="username">Username:</label> <input type="text" name="username" id="username" />
    <span id="usernameLoading"><img src="indicator.gif" alt="Ajax Indicator" /></span>
    <span id="usernameResult"></span></p>
 
//后台
return '<span style="color:#f00">Username Unavailable</span>';
	
return '<span style="color:#0c0">Username Available</span>';

 

 

 

 

 
/*----- 單選 -----*/
 
//  取得被選擇項目的文字
 
$("#select").find(":selected").text();
 
 
 
//  取得被選擇項目的值
 
$("#select").find(":selected").val();
 
 
 
 
 
/*----- 多選 -----*/
 
//  使用迴圈取得所有被選擇的項目
 
$("#select").find(":selected").each(function() {
 
    alert(this.text);    //  文字
 
    alert(this.value);   //  值
 
});
 
 
 
2增加項目
 
 
 
$("#select").append($("").attr("value", "").text("文字"));
 
 
 
3. 移除選擇的項目
 
 
 
 
 
//  移除選擇的項目
 
$("#select").find(":selected").remove();
 
 
 
//  移除全部的項目
 
$("#select option").remove();
 
 
 
 
 
4.移除選擇項目後,防止捲軸移到最上面
 
 
 
//  先取得要移除項目的 index
 
var selectIndex = $("#select").find(":selected").index();
 
 
 
//  移除選擇的項目
 
$("#select").find(":selected").remove();
 
 
 
//  判斷移除項目後,原先的index是否還有option,有的話就直接將此option設定為選取狀態
 
//  捲軸就不會往上跑了
 
if ($('#select option').get(selectIndex) != null) {
 
    $('#select option').get(selectIndex).selected = true;
 
}
 
else {
 
    //  沒有項目的話,判斷select理是否還有option
 
    //  有的話,表示移除的項目為最後一個,就設定上一個option為選取狀態
 
    if ($('#select option').length > 0) {
 
        $('#select option').get(selectIndex - 1).selected = true;
 
    }
 
}
 
 
 
 
 
$("select#CategoryFirst option[value='value2']").attr("selected", "selected");
 
$("select#CategorySecond option[value='value2']").attr("selected", "selected");
 
 
 
$("#CategoryFirst  option[value=2]").prop("selected",true); //也可以
 
$('#CategoryFirst').val(<%=CId1 %>);
 
 
 
 
 
 
$("#rr").prop("disabled", true); 不可操作
 
$("#rr").prop("disabled", false); 可操作
 
$("#rr").attr("disabled", true); 不可操作
 
 
 
disabled="disabled"  不可操作  等价: disabled=""      disabled=null
 
 
 
 
 
 
 
 
var j={"count":"0","error":"","success":"","data":[{}]};
 
alert(j.data.length) 为 1
 
判断:if(j.success) 
 
 
 
 
 
// 文本框只允许数字
$("#input1").keypress(function(e)
{
  // allow digits only
  if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57))
  {
    return false;
  }
});

 

 

functionvar"#table1 tr"functionvarthis"td:nth-child(3)"ifnull""this"td:nth-child(3)""#total""Total Price: "function"#table1 tr"functionif'Are you sure you want to delete:'this"td:nth-child(1)"this"background-color""#FFFFC4"thisfunctionthis"#<%=gdRows.ClientID%> tr"":odd""background-color""grey""#<%=gdRows.ClientID%> tr"":even""background-color""blue"function"#<%=gdRows.ClientID%> tr:has(td)"functionthis"background-color""Lightgrey"functionthis"background-color""#ffffff"function"Helvetica Neue""Lucida Grande""Segoe UI"

</style>

本文转自曾祥展博客园博客,原文链接:http://www.cnblogs.com/zengxiangzhan/archive/2010/02/20/1669585.html,如需转载请自行联系原作者


相关文章
|
7月前
|
JavaScript 前端开发 CDN
jQuery补充
jQuery补充
208 0
|
5月前
|
JavaScript
在线引入jQuery
在线引入jQuery
|
JavaScript 前端开发 应用服务中间件
|
Web App开发 JavaScript 数据格式
|
JavaScript 前端开发 Java
|
JavaScript 前端开发 内存技术
|
Web App开发 前端开发 JavaScript
jQuery事件整理回顾
一、事件 1、加载DOM $(document).ready() 这个第一节里详细介绍了 2、事件绑定 jQuery定义了bind()方法作为统一的接口,用来为每一个匹配元素绑定事件处理程序。
735 0
|
JavaScript
免费的jquery ui 收集
1 参考这个网站的收集的,以后可以好好研究下 http://www.open-open.com/lib/list/318、 2  http://code.google.com/p/dwz/  中国人自己开发的。
740 0

相关课程

更多