【发布时间】:2022-11-11 07:44:53
【问题描述】:
嗨,我认为这很容易,但我现在似乎无法使用它。我想使用 javascript 函数来设置 html 标记的可见性。我意识到下面是错误的,因为 hidden 不需要布尔值。我只是在努力点击最简单的方法是什么?
所以我有一些这样的脚本
<script>
function evaluateBoolean() {
if (location.hostname.indexOf("someval" > 0) {
return true;
} else {
return false;
}
</script>
我想用这样的iut
<div hidden="evaluateBoolean()"> this will be shown or displayed depending on the javascript boolean </div>
【问题讨论】:
-
你可以像这样重写你的整个函数:
const evaluateBoolean = () => location.hostname.includes("someval");。目前您正在评估一个布尔值,如果布尔值为真返回真,如果布尔值为假返回假;那只是通过额外的步骤返回布尔值。 -
要设置 HTML 标记的可见性,您必须更改 HTML 标记的 CSS 属性(即显示属性)。为此,您需要先选择 HTML 标记,然后将
display属性更改为“none”。为了简化上述过程,您可以使用第三方库(例如 jQuery)来完成。 -
你的逻辑是行不通的。根据文档,一旦
hidden属性为当下.这意味着,即使<div hidden="false">也会隐藏 div,因为该属性存在。你应该使用一个类<div class="hidden">,在CSS 中设置.hidden { display:none; },然后切换这个类。 -
您的真/假(显示/隐藏)结果的依据是什么?如果我们从这个开始,那么我们可以解决你试图解决的问题,而不是解决你想出的函数来解决原始问题的 x/y 问题。
标签: javascript html