js解密
https://www.sojson.com/jsjiemi.html
苹果微信网页端alert不弹出
echo "<script>if(2>1){setTimeout(()=>{alert('商城正在维护中')},400)}</script>";
exit;
<?php echo ""; ?>
数组问题
用id.push($(this).val());代替
id[a] =1
可以解决如果a从5开始,前面的键位1234为空
push()方法
该方法是向数组末尾添加一个或者多个元素,并返回新的长度。
处于效率的考虑, 要求js代码应该写在html的末尾, 即body结束之
//后代选择器 > 代表两者之间是父子关系 不控制孙子
$(’#d1 > p’).css(‘color’, ‘green’);
/后代选择器: 某标签下所有的 p, 不分层级
$(’#d1 p’)
兄弟选择器, 选择某个标签下方的一个标签 范兄弟
$(’#p2 + p’) ~
//p标签 且 class=‘blue’
$(“p.blue”).css(‘color’, ‘green’);
siblings()
获取当前节点的兄弟节点(不包含当前节点本身)
购物车
全选
$(‘button’).first().click(function () {
// prop 设置属性
// :checkbox 表示 [type=“checkbox”], 一种简写方式
// $(‘form’).children(’:checkbox’).prop(‘checked’, true);
// $(‘form’).children(’:checkbox’).check();
$(‘form’).children(’:checkbox’).each(function(){
this.checked = true;
});
});
反选 this.checked = !this.checked;
三级
$.each(response, function (k, v) {
var val = ‘’ + firstletter + ’ ’ + name + ‘’;
//添加到下拉列表中
$('#prov').append(val);
$(’#city’).children().first().nextAll().remove();
先获取所有的第一个的所有弟弟删除
//删除轮播图
$(’#delete’).click(function () {
var id = new Array;
$(’#slideshow [type=checkbox]’).each(function (a, k) {
// this.checked = true;
if (this.checked == true) {
id[a] = $(this).val();
}
});
if (id.length == 0) {
layer.msg(‘请选择要删除的轮播图’, {icon: 2, time: 1000});
} else {
$.post(‘php/banner.php’, {id: id}, function (res) {
res = JSON.parse(res);
layer.msg(res.msg, {icon: res.code, time: 1000},function(){
window.location.href = ‘Shopping.php’;
});
})
}
})
不记录历史记录的跳转
window.location.replace(url);
全局方法
window.skip = function(url) {
window.skip = function(url){
window.location.replace(url);
}
这样处理的好处是无需担心因页面未完成加载,造成DOM节点获取不到,使脚本报错的问题,而且能避免因脚本运行缓慢造成页面卡死的问题。另外,Yahoo的前端优化指南里就有这一条。
window.location.reload();
parent.location.reload();
返回上一页
window.history.go(-1)
定时执行
setTimeout(hello,1000);
var img = document.getElementById(‘file’+a);
var fileobj = img.files[0];
获取表单img
处于效率的考虑, 要求js代码应该写在html的末尾, 即body结束之前
//$() 是jQuery的语法: 用来选择指定的内容
// $(document) 选中整个文档, 代表当前html文件
// .ready() 判断文档是否已经准备好了, 即加载完毕了
// 匿名函数 function(){}
//总体含义就是: 当前html文件被加载完毕以后, 执行()中的匿名函数
$(document).ready(function () {
//选中id='d1’的元素, 把文字颜色变为红色
//js代码
var d1 = document.getElementById('d1');
//jQuery
// # 是css的id选择器
// .css 代表调用对象中的一个css方法
//相当于写了 style="color:red;"
$('#d1').css('color', 'red');
$('#d1').css('font-size', '30px');
});
// 文档就绪的写法有点长,不符合jQuery的 write less, do more 的初衷
// 所以官方提供了简化写法
$(function () {
// 利用标签选择器 选中p标签, 然后添加border
$('p').css('border', '2px solid purple');
// jQuery的整体思路:
// $(选择器).动作(参数...)
// 选中指定的内容 指定某个动作
});
文档对象模型: 主要提供一些方法能够修改文档元素的值
$() 就是 jQuery提供的对象类型
val()方法: 用来操作 input标签的 value属性的值
text(): 获取 标签中的 文本部分, 会忽略掉 html标签
html(): 获取标签中所有内容
读取标签中 任意属性的值
attr //相对路径
prop //绝对路径
单选框的 checked 属性, 在prop 和 attr 读取时的不同
var in1 = $(’#in1’).attr(‘checked’);
console.log(in1); //undefined
var in2 = $('#in2').attr('checked');
console.log(in2); //checked
var in1 = $('#in1').prop('checked');
console.log(in1); //false
var in2 = $('#in2').prop('checked');
console.log(in2); //true