gpt4 book ai didi

JavaScript anchor -访问另一个HTML页面上的id

转载 作者:行者123 更新时间:2023-11-28 16:41:32 25 4
gpt4 key购买 nike

我有两个 html 页面,当您单击第一个 html 上的某些内容时,它将转到第二个 html 页面。我想要做的是根据您在第一个 html 上单击的内容显示文本。不同的文本用不同的 id 包裹。我是这样写的:

<a href="secondpage.html#one"></a>
<a href="secondpage.html#two"></a>
<a href="secondpage.html#three"></a>

我期待看到two.html加载id为“one”的文本,但它不起作用,有人知道我做错了什么吗?

这是第二页上的代码:

<ul id="menu" class="aaa">
<li><a id="one" href="#">one</a></li>
<li><a id="two" href="#">two</a></li>
<li><a id="three" href="#">three</a></li>
</ul>

我有一个JS文件来修改每个id:

$("one").observe('click', function() {
$('Pic').writeAttribute('src',"picone.jpg");
$('Bio').update("texthere!");
});

两个和三个相同。

现在,如果我点击第一页上的按钮,它将始终显示无论我点击哪个按钮,“一”的文本和图片都是如此。

但是如果我点击“two”,我想看到它的图片和文字。

最佳答案

您想要做的是在页面加载时模拟对 anchor 的点击。由于您使用的是 jQuery,最简单的方法(但远不是最好的)如下:

$(window).observe('domready', function () {    $(location.hash).click();});

将 ondomready-event 附加到窗口。获取 id=one 的元素(对于 jQuery,这将是“#one”,与您的 location.hash 相同,在这种情况下非常方便),触发对其的单击。

您可能需要替换 $(location.hash).click();与 $(location.hash).get(0).click() 因为 jQuery 倾向于返回 jQuery 对象数组。

但是在您的情况下,更好的解决方案是拥有一个可以手动触发的事件处理程序,从而避免触发事件的需要,以及删除 anchor 并将 onclick 直接放在您的 li 上。

此外,当您似乎只想动态显示/隐藏内容时,为什么还要加载第二个页面?在同一页面上执行...

关于JavaScript anchor -访问另一个HTML页面上的id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/269566/

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