我目前在Chrome中遇到问题,AdBlock阻止了我网站的几行JQuery。我已将其缩小到恶意软件域'影响它的过滤器列表,因为它适用于禁用该过滤器时所有其他过滤器。
我的HTML(受影响的部分)如下:
<div class="index-section-5 container-fluid">
<div class="content">
<h1>Interested?</h1>
<p class="text">Follow the link below to register your interest in CyberKombat</p>
<div class="button-container">
<div class="outlined-button button register-form-button">
<p>Register Here</p>
</div>
</div>
</div>
</div>
<div class="register-interest-container">
<div class="close-form-button register-form-close">
<div class="close-button-line one"></div>
<div class="close-button-line two"></div>
</div>
<div class="form-container">
[contact-form-7 id="140" title="Register Form"]
</div>
</div>
正在加载的自定义js是:
$(document).ready(function(){
$(".menu-toggle").on('click', function() {
$(this).toggleClass("on");
$('.menu-section').toggleClass("on");
$(".navigation-mobile").toggleClass('hidden');
});
$('.contact-map').click(function () {
$('.contact-map iframe').css("pointer-events", "auto");
});
$(".register-form-button").click(function(){
$(".register-interest-container").show();
});
$(".register-form-close").click(function(){
$(".register-interest-container").hide();
});
});
(只有底部两个是相关的,所有其他JQuery都按预期工作)
当用户点击“注册表单”按钮时,会发生什么? div,&#39; register-interest-container&#39;应该出现(CSS最初加载display:none)。这适用于所有其他浏览器,Chrome隐身模式以及禁用恶意软件域过滤器时。但是,如果启用了恶意软件域过滤器,则单击该按钮不会执行任何操作。
该网站目前尚未完成,因此我无法链接到实际网站,但您可以在下面的图片中看到最终结果:
点击前:http://i.imgur.com/7oke2Jy.png
点击:http://i.imgur.com/eYIlCBR.png
我有什么方法可以改变JQuery以防止Adblock阻止它吗?
我尝试过使用.css()和.toggleClass()通过更改css或添加一个类来使其可见,但这些都不起作用
该表格由“联系表格7”生成。 Wordpress上的插件,这是我用于此网站的CMS。我的自定义.js文件正在通过functions.php加载,如下所示:
wp_enqueue_script( 'custom-javascript', get_template_directory_uri() . '/js/custom-javascript.js' , array('jquery'), false );
非常感谢任何帮助
由于
答案 0 :(得分:0)
今天早上我设法解决了这个问题。我意识到我是从外部网站意外加载我的cookie吧脚本(我以前工作过的网站,忘了更改源URL),这就是AdBlock阻止它的原因。出于某种原因,这必然导致其他JQuery被阻止(但仅在索引页面上)。我现在已将Cookie栏的脚本源替换为:
"<?php bloginfo('stylesheet_directory'); ?>/js/jquery.cookiebar.js"
现在我的cookie栏不仅可以启用AdBlock,而且我的其他JQuery也可以。