jquery常用操作整理

1.数据中添加或者删除指定元素

  var  arr=['red','yello','blue'];

  arr.push('green');  //添加元素

  arr = $.grep(arr,function(v){

  return v !=  'yellow';  

  })  ;     //移出值为“yellow”的元素

 

从数组中删除数据   item为要删除的数据
arr.splice($.inArray(item,arr),1);

2.jquery动态添加或者移除style

$('#id').css('background','yellow');  //添加背景色
$('#id').removeAttr('style');     //移除style

3.一个js或者html文件中调用另一个js文件中的变量值

window.globalData = {data:['1','2','3']};  //设置全局数组
另一个文件调用:
var newData = window.globalData.data;

4.键盘搜索事件

<input id="search" placeholder="请输入搜索内容">
//搜索
$('#search').bind('keypress', function (event) {
if (event.keyCode == "13") {
var keyword = $(this).val();
}
})

5.刷新页面

  <a href="javascript:history.go(-1)">返回上一页</a>
  <a href="javascript:location.reload()">刷新当前页面</a> onClick="javascript:location.replace(location.href);"
  <a href="javascript:" onclick="history.go(-2); ">返回前两页</a>
  <a href="javascript:" onclick="self.location=document.referrer;">返回上一页并刷新</a>
  <a href="javascript:" onclick="history.back(); ">返回上一页</a>
  直接跳转到指定页面:location.href ="XXX";

6.html反转义

function escape2Html(str) {
var arrEntities={'lt':'<','gt':'>','nbsp':' ','amp':'&','quot':'"'};
return str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){
return arrEntities[t];
});
}

 7.页面自动刷新

function myrefresh()
{
window.location.reload();
}
setTimeout('myrefresh()',10000); //10秒刷新一次

 8.获取多选框选中的值

var data= [];  
$('input[name=vip]:checked').each(function(){
data.push(parseInt($(this).val()));
});

 9.两个数组的交集和差集

//交集
let intersection = a.filter(v => b.includes(v))
//差集
let difference = a.concat(b).filter(v => !a.includes(v) || !b.includes(v))
10.清理数组中的空值
function clearArr(_arr){
var arr = $.grep(_arr,function(n,i){
return n;
},false);
return arr;
}

11.$.post,$.get异步操作,需要用到同步操作时,可用
   $.ajaxSettings.async = false;
12.jquery判断页面元素是否存在
  if ( $("#someID").length > 0 ) { 
      //逻辑部分
  }   
13.根据input值改变而触发事件
$('#id').bind('input propertychange', function() {


});

14.tp中,前端获取PHP后端assign的值
PHP后端:
  $this->assign([
  'test'=>1,
  'arr'=>[
  ['id'=>1,'name'=>'张三','score'=>100],
  ['id'=>2,'name'=>'李四','score'=>90],
  ['id'=>3,'name'=>'王五','score'=>98]
  ]
  ]);
前端页面中:
  var test2 = {$test2};
  var arr = {:json_encode($arr)};

15.遍历某元素下的子元素 (如下图:遍历div下面的子元素)

     

$("#single_record div").each(function (i,obj) {
//obj代表子元素div对象
//获取子元素中的input 里面的title值
var title = $(obj).find('input').attr('title');

//indexof 判断字符串包含
if(title.indexOf(key) === -1){
$(obj).hide();
}
});
16.页面按照比例缩放(scale属性)
var scale_width = 0.5,scale_height=0.5; //宽和高缩放比例
$('.class').css('transform', "scale("+scale_width+","+scale_height+")");
17.某循环元素给第一个或者第N个元素加样式
$("#id:first").addclass('classname');
18.jquery中对象的长度
  var v = {1:{'title':1},2:{'title':2}};
  var length = Object.keys(v).length;


 



posted @ 2020-03-16 14:13  北往星辰  阅读(336)  评论(0编辑  收藏  举报