Javascript 函数创建条件元素

标签 javascript

我不是程序员,但是我一直在尝试查看类似的示例以提出我自己的版本,这就是我正在尝试做的事情。

<script type="text/javascript">
    var advertContainer = null;
    var adblocked = null;

function Checkads() {
    if ($('.wp_bannerize').height() == 0) {
    var adblocked = document.createElement("span");
    var adnotice  = document.createTextNode("Please support our website by enabling ads");
    adblocked.appendChild(adnotice);
    var advertContainer = document.getElementById("wp_bannerize");
    advertContainer.appendChild(adblocked);
    };
    }

$(document).ready(function(){
    Checkads();
});
</script>

但是我收到错误:未捕获类型错误:无法调用方法附加子“null”

谁能帮我解决

更新

这是更好更好的代码,但是文本只能在源代码中可见,而不能在网站上可见。

<script type="text/javascript">

function checkads() {
    if ($('.wp_bannerize').height() == 0) {
    $('<div id="adnotice">').text('Please support our website by enabling ads').appendTo('.wp_bannerize');
    };
    }

$(document).ready(function(){
    checkads();
});
</script>

最佳答案

您将类选择器与 jQuery 结合使用:

$('.wp_bannerize')

但是使用原生 DOM 方法的 ID 选择器:

document.getElementById("wp_bannerize");

它们不一样。要修复您的脚本,请将 getElementById('wp_bannerize') 替换为 getElementsByClassName('wp_bannerize')[0],或者仅使用 jQuery:

if ($('.wp_bannerize').height() == 0) {
    $('<span>').text('Please support our website by enabling ads').appendTo('.wp_bannerize');
}

关于Javascript 函数创建条件元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17481563/

相关文章:

javascript - Angular2 - 在动态添加的 HTML 中捕捉/订阅(点击)事件

javascript - 语法错误 : Unexpected token => Nodejs

javascript - 函数何时以 }; 终止

javascript - 如何防止用户通过 jQuery UI 日期选择器中的禁用日期进行预订?

php - datetimepicker 不想要我的 php 变量

javascript - Google+ Oauth 2.0 - 注销效果很好,但刷新网页后自动登录

javascript - 使用 AJAX 加载网页

javascript - 如何使用 javascript 单击选项值?

javascript - 在 Canvas 中绘制多条贝塞尔曲线路径

javascript - 当另一个字段更改时触发字段验证