【问题标题】:jQuery -use hide/show to toggle content so that some displays when javascript is enabled and other content when its *disabled*?jQuery - 使用隐藏/显示来切换内容,以便在启用 javascript 时显示某些内容,而在 *禁用 * 时显示其他内容?
【发布时间】:2011-08-08 17:46:23
【问题描述】:

我正在尝试使用 jQuery 来隐藏类 no_js 的内容,并显示类 js 的内容。我将它用于表单上的按钮;当启用 Javascript 时,我显示将 onclick 绑定到 Javascript 函数的 type="button",当禁用 Javascript 时,页面显示(默认显示)type="submit" 按钮。到目前为止,这是我所拥有的:

<input class="no_js" type="Submit" value="Generate"/>
<input class="js" type="button" value="Generate_JS" onclick="generate_password()"/>

.js 元素在样式表中设置为display:none。我想使用隐藏/显示或切换,因为元素可能有不同的显示类型(inlineinline-block,这取决于元素)所以我不能只使用显示设置 CSS 属性(这个脚本是站点范围,因此它基于类,而不是 ID)。

有人可以帮帮我吗?现在,Generate 按钮一直显示,Generate_JS 按钮从不 显示。

编辑:抱歉,我想我不能在我的 cmets 中输入代码?这是我在标题中使用的代码,结果仍然相同。

$(document).ready(function() {    
    $(".no_js").hide();
    $(".js").show();
})

【问题讨论】:

    标签: jquery show-hide


    【解决方案1】:
    <input class="no_js" type="Submit" value="Generate" />  
    <input class="js" type="button" value="Generate_JS" onclick="generate_password()" style="display: none"/>
    <script>
    $("input.js").show();
    $("input.no_js").hide();
    <script>
    

    【讨论】:

    • 我测试了您的确切代码,但它不起作用。还有什么我可以尝试的吗?
    • Generate 按钮一直显示(无论是否启用 javascript),Generate_js 按钮从不显示。
    【解决方案2】:

    您还可以在所有当前的 javascript 浏览器中使用 &lt;noscript&gt; 元素,该元素仅在未检测到脚本语言时显示。

    【讨论】:

    • 我知道 noscript 元素,但这并不能帮助我在启用它时显示不同的内容。此外,noscript 元素可能会导致我专门使用的 XHTML 1.0 Strict 出现问题。
    【解决方案3】:

    问题是由我的虚拟主机系统中的一个不相关的错误引起的;他们在通过的大多数数据包上都遇到了丢包,在所有这些混乱中,我上传的 JQuery 库没有通过。我的原始代码又可以工作了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-08
      • 1970-01-01
      • 2017-10-18
      • 1970-01-01
      • 2018-12-14
      • 2012-11-10
      • 2013-01-16
      • 1970-01-01
      相关资源
      最近更新 更多