如果用户在地址栏中手动输入我们的 url,模式不显示
Modal doesn't show if user manually types in our url in address bar
当用户从外部 link(即 Google 搜索结果)访问我们的页面时,我创建的模式会显示,但是 如果用户通过以下方式进入我们的网站手动在地址栏中输入我们的URL,出现错误,模态框没有出现。
这是我的代码:
const siteUrl = ["website.com"];
const referrer_hostname = new URL(document.referrer).hostname;
if (siteUrl.includes(referrer_hostname)) {
console.log("Don't Show Modal", document.referrer);
} else {
console.log("Show Modal", document.referrer);
$( window ).on('load', function() {
console.log("closure modal firing");
$('#closureModal').modal({
backdrop: 'static',
keyboard: false,
show: true
});
});
#closureModal
连接到模态的HTML。
错误:(index):123 Uncaught TypeError: Failed to construct 'URL': Invalid URL
document.referrer在地址栏输入URL时为空字符串""。尝试添加验证:
const referrer_hostname = document.referrer !== "" ? new URL(document.referrer).hostname : "";
这可以让您避免 TypeError
当用户从外部 link(即 Google 搜索结果)访问我们的页面时,我创建的模式会显示,但是 如果用户通过以下方式进入我们的网站手动在地址栏中输入我们的URL,出现错误,模态框没有出现。
这是我的代码:
const siteUrl = ["website.com"];
const referrer_hostname = new URL(document.referrer).hostname;
if (siteUrl.includes(referrer_hostname)) {
console.log("Don't Show Modal", document.referrer);
} else {
console.log("Show Modal", document.referrer);
$( window ).on('load', function() {
console.log("closure modal firing");
$('#closureModal').modal({
backdrop: 'static',
keyboard: false,
show: true
});
});
#closureModal
连接到模态的HTML。
错误:(index):123 Uncaught TypeError: Failed to construct 'URL': Invalid URL
document.referrer在地址栏输入URL时为空字符串""。尝试添加验证:
const referrer_hostname = document.referrer !== "" ? new URL(document.referrer).hostname : "";
这可以让您避免 TypeError