jq笔记

记一次jq的ajax跨域

今天才了解到小胡子哥说的那段话
用jq去跨域,感觉还是有一个挺大的差异的,我一直用原生JS的方法去做,是没问题的,但是用了jq,情况又有所改变,他返回给我的是这样一个error,

我还以为自己对jq的选项不熟,去翻书、查手册、查文档,看到手册和文档给的例子都是没问题的,一直搞不懂为什么命名提交成功,却返回不了数据,去QQ群里找牛人,终于得到了解答了。

原来是一个callback的问题,那位大牛(姑且称之,反正比我牛)说,是我的参数出了问题,在使用jq,百度要把callback命名为cb,所以不能直接把callback写上去,

那位大牛还教我看提交的url,图



困扰了我一个多星期的问题终于解决了,看到前端不仅要会js、和html、css,还要具备其他的一些网络知识,要想成为大牛,就必须花费时间和功夫看的高、看得远因为生存的深,才能观看的深。此时又想起小胡子哥的话,当初看了没什么感觉,现在渐渐领悟了,也感到自己跟前端迈进了一步。

这里简单记录一下jq封装了原生js的哪些方法,和哪些方法没有封装。


鼠标滚轮,这个没有封装FF还是用DOMMouseScroll,ie和chrome用mousewheel

//    $("#div1").on('mousewheel',function (ev) {
//        alert(ev.originalEvent.wheelDelta);
//    })
    
    $("#div1").on('DOMMouseScroll',function (ev) {
        alert(ev.originalEvent.detail);
    })

 

makeArray

数组转对象,类数组转对象

var aDiv = document.getElementsByTagName('div');
var c = $.makeArray(aDiv,{length:0});
console.log( c[0] );

<div>111</div>
<div>222</div>

只要第二个参数写成length=0,就把这个类数组转成对象了

var arr = [111,222,333];
var c = $.makeArray(aDiv,{length:0});

console.log( c[0] );

数组同理

 

 

pushStack,内部方法,其原理跟做电梯一样,先进去的后出来,后进去的先出来

 

Jquery提高,请看下面的文章,网上看了很多文章都大同小异,只有这篇真知灼见,赶紧收藏

http://www.ruanyifeng.com/blog/2011/08/jquery_best_practices.html

jq源码
http://www.cnblogs.com/aaronjs/p/3279314.html
http://www.zhihu.com/question/20521802


使用jq过滤第一个元素 

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>过滤第一个元素td</title>
</head>
<body>

<table id="table-section">
    <tr>
        <td class="warm">1</td>
        <td class="warm">2</td>
        <td class="warm">3</td>
        <td class="warm">4</td>
        <td class="warm">5</td>
    </tr>
</table>

<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>

    //第一种
   $('#table-section').find('td:gt(0)').css('background', 'red');
   //第二种
   $('#table-section').find('td').filter(function (index, dom) {
       if(index !== 0){
           $(this).css('background', 'red');
       }
   });

   //第三种
   $('#table-section').find('td').slice(1).css('background', 'red');

</script>
</body>
</html>
原文地址:https://www.cnblogs.com/masita/p/4458269.html