使用MediaNet广告脚本

时间:2017-07-01 11:35:22

标签: javascript asynchronous

我正在尝试将MediaNet广告脚本从原始广告更改为我在其中一个网站上发现的广告脚本,以便提高页面加载效果。

我已经完成了推荐的所有操作,但仍然在控制台中出错。

原始剧本

<script id="mNCC" language="javascript">
                medianet_width='300';
                medianet_height= '600';
                medianet_crid='#########';
                medianet_versionId = "######";
                (function() {
                    var isSSL = 'https:' == document.location.protocol;
                    var mnSrc = (isSSL ? 'https:' : 'http:') + '//contextual.media.net/nmedianet.js?cid=99CC99CC9' + (isSSL ? '&https=1' : '');
                    document.write('<scr' + 'ipt type="text/javascript" id="mNSC" src="' + mnSrc + '"></scr' + 'ipt>');
                })();
</script>

以下内容:

我打算使用

的脚本
<script>
    window._mNHandle = window._mNHandle || {};
    window._mNHandle.queue = window._mNHandle.queue || [];
    medianet_versionId = "######";
    (function() {
        var sct = document.createElement("script"),
            sctHl = document.getElementsByTagName("script")[0],
            isSSL = 'https:' == document.location.protocol;
        sct.type = "text/javascript";
        sct.src = (isSSL ? 'https:' : 'http:') + '//contextual.media.net/nmedianet.js?cid=99CC99CC9' + (isSSL ? '&https=1' : '')+'';
        sct.async = "async";
        sctHl.parentNode.insertBefore(sct, sctHl);
    })();
</script>
<div id="#########" style="width:300px;height:600px;">
    <script type="text/javascript">
        try {window._mNHandle.queue.push(function () { window._mNDetails.loadTag("#########", "300x600", "#########"); }); }
        catch (error) {}
    </script>
</div>

我得到的错误

'Document': It isn't possible to write into a document from an asynchronously-loaded external script unless it is explicitly opened.
s @ nmedianet.js?cid=99CC99CC9&https=1:3
h @ nmedianet.js?cid=99CC99CC9&https=1:3
l.execSafe @ nmedianet.js?cid=99CC99CC9&https=1:1
F @ nmedianet.js?cid=99CC99CC9&https=1:1
dt @ nmedianet.js?cid=99CC99CC9&https=1:1
bootstrap @ nmedianet.js?cid=99CC99CC9&https=1:3
se @ nmedianet.js?cid=99CC99CC9&https=1:3
l.execSafe @ nmedianet.js?cid=99CC99CC9&https=1:1
F @ nmedianet.js?cid=99CC99CC9&https=1:1
X @ nmedianet.js?cid=99CC99CC9&https=1:1
(anonymous) @ nmedianet.js?cid=99CC99CC9&https=1:3
(anonymous) @ nmedianet.js?cid=99CC99CC9&https=1:3

请提出任何想法或建议。

2 个答案:

答案 0 :(得分:1)

您可以使用PostScribe来解决此错误。

https://github.com/krux/postscribe

答案 1 :(得分:0)

我发现了自己的错误:

显然我应该使用以下内容:

//contextual.media.net/dmedianet.js?cid=99CC99CC9

而不是

//contextual.media.net/nmedianet.js?cid=99CC99CC9

您可以猜到,这些是两个不同的脚本,它们执行不同的操作。

我希望这对像我这样的人有帮助