注:突然接收了一个jq项目的修改任务,记录一下
1、如何知道用户点击浏览器返回按钮了
想p吃
(1)单页面可以监听url的变化,
(2)jq写的多页面,可以利用监听localStorage试一下,我的一个思路
2、获取display的元素
注:因为使用tabs切换的时候,总是去请求,在微信小程序里面的网页create标签,居然是有响应顺序的,以至于客户提了一个bug,顺序总是不一样的
(1)display和visibility都可以拿到标签的即使是none
(2)display:black和visibility:visible是可见的
3、Jq的几个操作方法
(1). html() 方法返回或设置被选元素的内容(此方法ie8下存在不兼容的问题, 会带来奇怪的现象, 搞了好久才发现是这里出了问题)
(2).hide()jq控制了元素的隐藏(hide方法),但js加载有延迟,导致元素不能马上隐藏,会显现一下
(3)$(“p”).empty();把所有段落的子元素(包括文本节点)删除
(4).text()文档加入
(5) append()
(6)replaceAll(“Hello world!”);用粗体文本替换每个段落:
4、通过class获取对象进行操作
(1)document.getElementsByClassName(“demo”);
5、js操作类名
(1)添加:节点.classList.add(“类名”);
(2)删除:节点.classList.remove(“类名”);
5、js控制浏览器跳转
(1)除了location.href
(2)location.replace从历史栈中找到那个历史记录跳过去,或者打开新的,但还会存在一些历史记录(自己理解,网上都说是不产生记录)
在ios的设备上当用户点击返回时,为了提高性能网页呈现的是快照形式,并不会更新内容”,就这个问题,弄了我好几个小时。。
location.replace的兼容性
(3)reload 方法,该方法强迫浏览器刷新当前页面。
6、css碰到整体数字会自动换行,
(1)解决办法:加入样式 word-break:break-all或word-wrap:break-word,我用的word-break:break-all
还要倒三角,首行缩进各自两个字符
7、其他
(1)translate(translateX,translateY)
(2)transform:translate3d(0,-50%,-50px)
(3)导出数组 export let arr = []
(3)input输入事件有change