Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript正文溢出:隐藏_Javascript_Jquery_Html - Fatal编程技术网

Javascript正文溢出:隐藏

Javascript正文溢出:隐藏,javascript,jquery,html,Javascript,Jquery,Html,我一直在尝试让它工作 我有两个复选框,作为我的移动CSS导航菜单的一部分。我有一个javascript,它可以防止一次打开多个复选框。它起作用了 现在,当选中其中一个复选框时,我试图向正文中添加一个溢出:隐藏,显然,如果未选中任何内容,则删除溢出:隐藏,但我似乎无法使第一部分正常工作 我对Javascript相当陌生,因此任何帮助都将不胜感激。谢谢 功能仅选择此(id){ var myCheckbox=document.getElementsByName(“导航检查”); Array.proto

我一直在尝试让它工作

我有两个复选框,作为我的移动CSS导航菜单的一部分。我有一个javascript,它可以防止一次打开多个复选框。它起作用了

现在,当选中其中一个复选框时,我试图向正文中添加一个
溢出:隐藏
,显然,如果未选中任何内容,则删除
溢出:隐藏
,但我似乎无法使第一部分正常工作

我对Javascript相当陌生,因此任何帮助都将不胜感激。谢谢
功能仅选择此(id){
var myCheckbox=document.getElementsByName(“导航检查”);
Array.prototype.forEach.call(myCheckbox,function(el){
如果(id!=el)
{
el.checked=false;
}
});
如果(id.checked==false)
{
id.checked=false;
}否则
{
id.checked=true;
} 
如果(id.checked==true)
{
$('body').css(“溢出”、“隐藏”);
}
}
//单击,滚动至文档顶部
函数topFunction(){
document.body.scrollTop=0;
document.documentElement.scrollTop=0;
}


看起来您来自不同的编程语言?:) 您会喜欢javascript,例如,第一个复选框的slim函数

function selectOnlyThis = ({ target }) => {
  const { id, checked } = target;
  id === 'rger' && checked && $('body').css("overflow", "hidden");
}
这就行了

它接受对任何
复选框所做的所有更改,并检查id是否为
rger
lger
,复选框是否已选中,然后使用
jquery
css
()方法更改
css



位置 $(“输入:复选框”)。在('change',函数(){ if($(this.attr('id')='rger'| |$(this.attr('id')='lger')&&$(this.prop('checked')){ $('body').css(“溢出”、“隐藏”); } 其他的 $('body').css(“溢出”、“可见”); });

参考此项。

如果一次只能使用一个选项,为什么要使用
input type=“checkbox”
input type=“radio”
默认情况下会这样做,并且不需要涉及脚本。因为正如我在描述中所述,它用于CSS菜单,需要radiobox没有提供的复选框的未选中部分。我错过了该部分。如果要包含脚本,无需检查是否选中复选框,只需在使用CSS的父对象和目标对象上添加/删除一个类(每个框一个)。看起来它只会添加溢出:如果仅选中rger,则隐藏到正文中正确吗?我希望它是如果“导航检查”元素名称之一。我尝试添加这个无论如何,它没有工作,它与我的猫头鹰滑块冲突。我也会用另一个按钮更新原稿,这样你就会明白左边菜单有一个复选框,右边菜单有一个复选框。你应该通过解析代码来理解它的功能,解释你做了什么以及它是如何工作的。如果您需要更多信息,请点击此处:。此外,如果您省略了不必要的注释,例如“看起来您来自另一种编程语言?”,那么答案是最好的。这是可行的,但是它只指rger而不是lger。我复制了if($(这..两次引用lger也很有效,但是我觉得这可以简化?我马上尝试了| |但我错过了额外的括号!我正在学习。谢谢你,这很完美。这个脚本似乎有问题,因为我的一位新成员指出,选中注册表单中的复选框导致了此功能。)触发不是Lger或Rger id且仍然应用该类的错误。还修复了该问题。哦,哇,你太快了。我知道你在那里做了什么。attr是必需的。它现在可以正常工作。我的问题是,如果我们取出Lger/Rger部分,并搜索输入[name=“nav check”],这两个元素都已命名,该操作是否有效。
<div class="r-btn">

<input id="rger" type="checkbox"  name="nav-check" />

<label for="rger" onclick="topFunction()"><span></span><br/><div>Location</div></label>

</div>






  $("input:checkbox").on('change', function () {

                    if (($(this).attr('id')=='rger' || $(this).attr('id')=='lger') && $(this).prop('checked')) {
                        $('body').css("overflow", "hidden");
                    }
                    else

                        $('body').css("overflow", "visible");

            });