因为最近公司需要,快速撸一个几个响应式布局的网站,用了fullPage.js插件遇到了以下问题
1.移动端打开新标签
解决方法:
window.location.href = './bbs.html'; 转跳页面
window.open('../index.html') 新窗口打开页面
可以利用 window.open 传参
另一个页面这样获取参数
function getQueryVariable(variable)
{
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if(pair[0] == variable){return pair[1];}
}
return(false);
}
例如http://www.runoob.com/index.php?id=1&image=awesome.jpg
调用 getQueryVariable("id") 返回 1。
调用 getQueryVariable("image") 返回 "awesome.jpg"。
- 因为另起了一个滑动导航与fullPage.js插件滑动同步,所以需要侧边导航出现时禁止页面滑动s
解决方法:
禁止滑动:
document.body.addEventListener('touchmove', bodyScroll, { passive: false });
允许滑动:
document.body.removeEventListener('touchmove', bodyScroll, { passive: false });
//passive 参数不能省略,用来兼容ios和android
passive是干吗用的呢,设置该属性的目的主要是为了在阻止事件默
认行为导致的卡顿。等待监听器的执行是耗时的,有些甚至耗时很明
显,这样就会导致页面卡顿。即便监听器是个空函数,也会产生一定
的卡顿,毕竟空函数的执行也会耗时。加上{ passive: false }能
防止页面卡顿。
我们可以通过传递 passive 为 true 来明确告诉浏览器,事件处理
程序不会调用 preventDefault 来阻止默认滑动行为。如果设置了
passive为true,同时又阻止默认行为,阻止是不生效的