Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.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 jQuery:隐藏元素_Javascript_Jquery_Html - Fatal编程技术网

Javascript jQuery:隐藏元素

Javascript jQuery:隐藏元素,javascript,jquery,html,Javascript,Jquery,Html,我有一个“反馈小部件”,我想为低分辨率屏幕隐藏它。我的问题是,它在之后注入了以下代码,不管我尝试了什么,我都无法隐藏reformal\u tab元素 <a id="reformal_tab" href="http://domain.com" onclick="Reformal.widgetOpen();return false;" onmouseover="Reformal.widgetPreload();" onmouseout="Reformal.widgetAbortPreload(

我有一个“反馈小部件”,我想为低分辨率屏幕隐藏它。我的问题是,它在
之后注入了以下代码,不管我尝试了什么,我都无法隐藏
reformal\u tab
元素

<a id="reformal_tab" href="http://domain.com" onclick="Reformal.widgetOpen();return false;" onmouseover="Reformal.widgetPreload();" onmouseout="Reformal.widgetAbortPreload();"><img alt="" src="domain.com/tab.png"></a>

我试过的

<script>
        $('reformal_tab').hide();
        $('#reformal_tab').hide();
</script>

$('reformal_tab').hide();
$(“#格式选项卡”).hide();
如果可以的话,这就是实际的小部件

守则:

<script type="text/javascript">
$(function() {
    $('#reformal_tab').hide();
});

    var reformalOptions = {
        project_id: 93459,
        project_host: "domain.com",
        tab_orientation: "left",
        tab_indent: "50%",
        tab_bg_color: "#F05A00",
        tab_border_color: "#FFFFFF",
        tab_border_width: 2
    };

    (function() {
        var script = document.createElement('script');
        script.type = 'text/javascript'; script.async = true;
        script.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'media.reformal.ru/widgets/v3/reformal.js';
        document.getElementsByTagName('head')[0].appendChild(script);
    })();
</script>

$(函数(){
$(“#格式选项卡”).hide();
});
var重新格式化选项={
项目编号:93459,
项目主持人:“domain.com”,
tab_方向:“左”,
制表符缩进:“50%”,
选项卡背景颜色:“F05A00”,
选项卡_边框_颜色:#FFFFFF“,
制表符\边框\宽度:2
};
(功能(){
var script=document.createElement('script');
script.type='text/javascript';script.async=true;
script.src=('https:'==document.location.protocol?'https://':'http://')+'media.reformal.ru/widgets/v3/reformal.js';
document.getElementsByTagName('head')[0].appendChild(脚本);
})();
你可以在这里看到它
第二个呼叫是有效的。
#
通过id引用元素

$('#reformal_tab').hide();
文档准备好后,您还需要调用它

$(function() {
    $('#reformal_tab').hide();
});
为什么不在注入时将其隐藏起来,然后在高分辨率屏幕上显示呢

<a id="reformal_tab" style="display:none;" href="http://domain.com" ...

第二个调用是有效的。
#
通过id引用元素

$('#reformal_tab').hide();
文档准备好后,您还需要调用它

$(function() {
    $('#reformal_tab').hide();
});
为什么不在注入时将其隐藏起来,然后在高分辨率屏幕上显示呢

<a id="reformal_tab" style="display:none;" href="http://domain.com" ...

为什么不干脆把它拿走呢

$('#reformal_tab').remove();

为什么不干脆把它拿走呢

$('#reformal_tab').remove();

如果元素被注入javascript,那么它可能在DOM就绪后动态插入。解决方案相当简单,在您的CSS中:

#reformal_tab {display: none;}

如果元素被注入javascript,那么它可能在DOM就绪后动态插入。解决方案相当简单,在您的CSS中:

#reformal_tab {display: none;}


html是否出现在页面中的javascript之前?如果将其包装在
$(function(){})
中会怎么样?在您尝试调用hide后,它可能正在注入reformal_tab元素$(“#reformal_选项卡”).hide();我应该做的。我把皮藏起来;在加载jquey in head标记之前编写代码,并将hide()放在脚本标记的body标记之后。html是否显示在页面中的javascript之前?如果将其包装在
$(function(){})
中会怎么样?在尝试调用hide之后,它可能正在注入reformal_tab元素$(“#reformal_选项卡”).hide();我应该做的。我把皮藏起来;在加载jquey in head标记之前编写代码,并将hide()放在脚本标记的body标记之后。@TESLISIMUS-好的,做了一些更改。这应该可以删除javascript或将
.hide
更改为
.show
。检查您是否正确引用了jquery javascript?@Mal-OP的问题是HTML被注入DOM,因此在注入元素之前调用
hide()
,因此当时不存在。@Aesthete不确定是否可行,请检查“小部件代码”@Aesthete ah!好的,很抱歉我没有意识到这一点。@teslasimus-好的,做了一些更改。删除javascript或将
.hide
更改为
.show
,这肯定有效。检查您是否正确引用了jquery javascript?@Mal-OP的问题是HTML被注入DOM,因此在注入元素之前调用
hide()
,因此当时不存在。@Aesthete不确定是否可行,请检查“小部件代码”@Aesthete ah!好的,很抱歉我没有注意到这一点。@teslasimus-元素在iFrame中,您无权访问它。只需在CSS中设置它,您似乎需要它!覆盖样式->很重要,但是如何使用jquery实现它?我想根据分辨率来显示它。@teslasimus-你真的不能,但你可以使用CSS媒体查询使其与分辨率相关,这是正确的方法,因为你不需要jQuery来实现这一点。@teslasimus-元素在iFrame中,你无权访问它。只需在CSS中设置它,您似乎需要它!覆盖样式->很重要,但是如何使用jquery实现它?我想根据分辨率来显示它。@teslasimus-你真的不能,但是你可以使用CSS媒体查询使它依赖于分辨率,这是正确的方法,因为你不需要jQuery来实现这一点。