javascript - 隐藏 iframe 上的动态元素

标签 javascript jquery css iframe colorbox

我有一个页面,它使用 colorbox 加载 iframe(专有信息)。

我需要隐藏 iframe 中具有特定类的元素(需要几秒钟加载)。

我尝试过,但没有成功。控制台消息未被命中。一旦它们被击中,我就可以使用 jQuery css 隐藏它们。

$(function () {

    'use strict';

    $(".className").ready(function () {
        console.log("className on class ready");
        $(".className").css("display", "none");
    });

    $(document).on("ready", ".className", function () {
        console.log("className on document ready");
        $(".className").css("display", "none");
    });

});

颜色框初始化:

function ShowColorbox(fileId) {

    'use strict';

    var colorboxUrl = getColorBoxUrl();

    $.ajax({
        type: "GET",
        url: colorboxUrl,
        dataType: "json",
        timeout: 30000,
        success: function (previewLink) {
            $.colorbox({ href: previewLink, iframe: true, width: "90%", height: "90%" });

        },
        error: function (jqXhr, textStatus, errorThrown) {
alert("failed");
        },
        complete: function () {
            // Do nothing
        }
    });

}

纯 CSS 方法(也不起作用):

<style>
        .className .UITextTranformUpperCase {
            display: none;
        } 
    </style>

最佳答案

您的 colorbox 使用动态 URL 来显示内容。您必须确保在查找元素之前加载内容。

您只需设置 fastIframe属性设置为 false 并添加一个 onComplete 处理程序,它应该可以工作:

$.colorbox({ 
    href: previewLink, 
    iframe: true, 
    width: "90%", 
    height: "90%",
    fastIframe: false,
    onComplete : function() {
        $('#cboxIframe').contents().find('.className').hide();
    }
});

请验证您的 colorbox iframe 是否具有 ID cboxIframe。如果没有,请更新 iframe 选择器

关于javascript - 隐藏 iframe 上的动态元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29743336/

相关文章:

php - Ajax 响应冲突的 css

javascript - 防止输入文本元素接受丢弃的元素作为输入

javascript - 在 Chrome 控制台中禁用 URL 缩短/格式设置

javascript - Jquery:根据相同的输入名称检查重复的值

php - 如何获取多个复选框值并通过 jquery 中的 ajax 发送这些值?

javascript - div之间的中心垂直线

css - 使用延迟 CSS 加载时改进 UI

html - 如何使用 bootstrap 3.0 在中心维护图像

javascript - jQuery - hasClass 问题

javascript - 我如何在 Bootstrap 箱中使用多选