首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在博客中使用<b:if条件中的引用url

如何在博客中使用<b:if条件中的引用url
EN

Stack Overflow用户
提问于 2020-10-17 22:09:45
回答 1查看 55关注 0票数 1

我只想加载一些脚本时,从一个特定的主机名流量。

例如:当博客流量来自www.mywebsite2.com时,我会加载一个脚本。我该怎么做呢?我试了很多,但还是找不到任何与此相关的东西。

下面是我尝试过的一些代码。

代码语言:javascript
复制
<b:if cond='"referrer" == "www.mywebsite2.com"'>
     <script>...</script>
    <b:else/>
      <script>...</script>
    </b:if>

我该如何在其中使用referrer。

EN

回答 1

Stack Overflow用户

发布于 2020-10-18 22:35:15

如果某个站点上的链接没有rel="noopener"值,您可以检测该站点是否打开了该链接。

例如,您的站点域是http://0.example.com,而引用站点域是http://1.example.com

在referrer站点中,用户单击了一个链接:

代码语言:javascript
复制
<a href="http://0.example.com" target="_blank">link</a>

在您的站点上,您可以通过以下方式检测传入流量:

代码语言:javascript
复制
if (window.opener && window.opener.location.hostname === '1.example.com') {
    // Run the script for `http://1.example.com`
}

要在该条件块下加载外部脚本,可以尝试AJAX或通用DOM插入:

方法1:

代码语言:javascript
复制
// Run the script for `http://1.example.com`
fetch('http://0.example.com/script.js').then(response => response.text()).then(text => {
    let script = document.createElement('script');
    script.textContent = text;
    document.head.appendChild(script);
    // Other script goes here ...
});

方法2:

代码语言:javascript
复制
// Run the script for `http://1.example.com`
let script = document.createElement('script');
script.src = 'http://0.example.co./script.js';
document.head.appendChild(script);
script.addEventListener('load', e => {
    // Other script goes here ...
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64403370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档