javascript - 隐藏父级的 jQuery 脚本不起作用 - Wordpress

标签 javascript jquery html wordpress parent-child

在 WordPress 中,由于某种原因,我无法让这个 jQuery 工作,尽管它通过 JSFiddle 工作。使用我的 jQuery 版本 1.11(我正在使用它,它正在我网站上的其他实例上运行)。我不确定这是否是冲突,如果是,我找不到它,或者我是否只需要用纯 JavaScript 编写它,我不确定正确的编码。

正如您在 JSFiddle 中看到的那样当您将库更改为 jQuery 1.11.0 时,脚本可以工作,但在普通 JS 中却不能。

我的冲突是我正在使用

$(function(){
    $('div.tabcontents > div').each(function(index){
        var innerView = $(this).find('div[class^="view"]');
        var innerHtml = $(innerView).html();
        if(innerHtml.trim() == ''){
            $(this).hide();
            $('ul.tabs').find('li').eq(index).hide();
        }
    });
});

在同一页面上,我担心这会导致问题,但仍不清楚原因

$(".view1:empty").parent().hide();
$(".view2:empty").parent().hide();
$(".view3:empty").parent().hide();
$(".view4:empty").parent().hide();
$(".view5:empty").parent().hide();

也根本不起作用。

我的 HTML 将呈现为以下内容:

<div class="tabcontents noScreen">
<div id="view1">
<h2>OVERVIEW</h2>
<div class="view1">Your bones don't break, mine do. That's clear.</div>
</div>

<div id="view2">
<h2>EXPERIENCE</h2>
<div class="view2"></div>
</div>

<div id="view3">
<h2>PUBLICATIONS</h2>
<div class="view3"></div>
</div>

<div id="view4">
<h2>COMMUNITY</h2>
<div class="view4">They called me Mr Glass.</div>
</div>

<div id="view5">
<h2>RECOGNITION</h2>
<div class="view5"></div>
</div>

</div>

<script>
$(".view1:empty").parent().hide();
$(".view2:empty").parent().hide();
$(".view3:empty").parent().hide();
$(".view4:empty").parent().hide();
$(".view5:empty").parent().hide();

//or

$(function(){
    $('div.tabcontents > div').each(function(index){
        var innerView = $(this).find('div[class^="view"]');
        var innerHtml = $(innerView).html();
        if(innerHtml.trim() == ''){
            $(this).hide();
            $('view').find('h2').eq(index).hide();
        }
    });
});
</script>

我在这里缺少什么?

我无法让 jQuery 在 Wordpress 的页面上工作。独立,如 JSFiddle ( http://jsfiddle.net/MikeRS/9LT7t/ ) 上所示,使用我在主题中排队的 jQuery 1.11.0 库,它工作得很好。我可以用普通的 JS 来代替它吗?或者,如果它存在冲突(我没有看到任何错误),是否可能是由于已经使用了其他类似的 jQuery?

最佳答案

尝试使用 jQuery 代替 $。 WordPress 默认使用 noconflict ,所以这很可能是这个问题。

关于javascript - 隐藏父级的 jQuery 脚本不起作用 - Wordpress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24768396/

相关文章:

jQuery .hide() 不会被媒体查询撤消

javascript - 在 JQuery 或 JavaScript 中的 Grid 标题上生成 onClick 事件

javascript - bool 复选框,设置文本字段的值

javascript - 如何将CSS添加到动态div Id

jquery - 我如何通过 jquery 和 ajax 替换图像(在 div 内)

html - 图像损坏并在屏幕上显示 css 代码

html - 使 <marquee> 成为屏幕宽度

javascript - 如何在 JavaScript 中安全地嵌套访问 token ?

javascript - 根据从 UI 中选择的时区过滤 php 中的日期

jquery - 防止表单验证 CSS .error 突出显示文本框