gpt4 book ai didi

javascript - href 没有链接到外部 url

转载 作者:行者123 更新时间:2023-11-28 01:42:32 24 4
gpt4 key购买 nike

我下载了一个设计很奇怪的单页模板。所有超链接都链接到页面上的部分,并且它使用数据链接 =“”参数。

现在我尝试将其中一个菜单项链接到目标为 _blank 的外部 url,但随后它正在寻找我在页面本身上定义的 url(因此它正在寻找不存在的部分,例如 www .example.com/http://google.nl )

链接在 href 元素上的值如下:

href="/home/" or href="/menu/"

<ul id="w1" class="navbar-nav nav">
<li><a id="navhome" class="" href="/home" title="Home" data-link="home">Home</a></li>
<li><a id="navmenu" class="" href="/menu" title="Menu" data-link="menu">Menu</a></li>

所以这不起作用(也没有目标 _blank:

<li><a id="navorder" href="http://order.company.com" target="_blank">Order Now</a></li>

这里用到了什么技术?以及如何将新菜单项链接到外部页面?

编辑:

我找到了处理 href 的代码:

$(".menu ul li a").not('.social-link').click(function(e) {
e.preventDefault();
$(".menu ul li a").removeClass("active");

tabTarget = $(this).data('link');
animateByMenu = true;

var hash = '#' + tabTarget;
var url = $(this).prop('href');
var menuItem = $(this).data('link');
$(".menu li a[data-link=" + menuItem + "]").addClass("active");

if (url) {
var top = $(hash).offset().top - 60;
$('html, body').animate({
scrollTop: top
}, 600, function(){

});
history.pushState('', '', url);
$('.navbar-toggle:visible').click();
}

return false;

});

当我点击链接时,控制台出现以下错误:

main.js:109 Uncaught TypeError: Cannot read property 'top' of undefined
at HTMLAnchorElement.<anonymous> (main.js:109)
at HTMLAnchorElement.dispatch (jquery.min.js:3)
at HTMLAnchorElement.r.handle (jquery.min.js:3)

最佳答案

应该有一段代码捕获所有“a”点击并阻止它们的默认行为。删除该数据属性并使用简单的 href。这应该有效。

如果编码器如此严格,那么上面的解决方案可能行不通。然后你应该做一些体操,比如使用 div 并为其附加一个点击处理程序。

关于javascript - href 没有链接到外部 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50364369/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com