Javascript 若窗口大小为移动且窗体可见,则不要运行脚本
如果满足两个条件,我想取消此脚本:Javascript 若窗口大小为移动且窗体可见,则不要运行脚本,javascript,jquery,Javascript,Jquery,如果满足两个条件,我想取消此脚本: 窗口宽度为767或更小 #隐藏表单具有显示样式:块 以下是函数: 函数init(){ window.addEventListener('scroll',函数(e){ var distance=window.pageYOffset | | document.documentElement.scrollTop, shrinkOn=300, 页眉=document.querySelector(“页眉”); 如果(距离>收缩){ 类别添加(标题,“较小”); }否则{
#隐藏表单
具有显示样式:块函数init(){
window.addEventListener('scroll',函数(e){
var distance=window.pageYOffset | | document.documentElement.scrollTop,
shrinkOn=300,
页眉=document.querySelector(“页眉”);
如果(距离>收缩){
类别添加(标题,“较小”);
}否则{
类别移除(标题“较小”);
}
});
}
window.onload=init();
我尝试添加以下内容作为else if,但它取消了所有视图中的脚本:
{
($(窗口).width()收缩){
类别添加(标题,“较小”);
}如果($(window).width()使用以下选项:
$('#隐藏形式').css('display')=='block'
此外,对于移动检查,您可以使用$('#隐藏形式')。css('display','block')
用于设置display
的值。要检查它,请使用$('#隐藏形式').css('display')
。因此您的代码应该是:
( $(window).width() <= 767 && $('#hidden-form').css('display') == 'block' )
($(window).width()FYI.css('display')
返回一个值,而.css('display','block')
设置一个值。@epascarllo您能解释一下吗?在我尝试添加此条件之前,函数工作正常,window.onload=init()有什么问题;?因为您正在调用函数并运行它。它没有等待加载。它应该是window.onload=init;
并且您有。return;
谢谢@epascarello!问题出在“.”上。所以这就是我现在遇到的问题,但是我仍然看到同样的问题。即使在桌面/平板电脑上,该函数也被取消。
( $(window).width() <= 767 && $('#hidden-form').css('display') == 'block' )