gpt4 book ai didi

javascript - 如何在新窗口中弹出几部分文本

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

我有这个 html 结构,我希望类“CodeBlock”中的内容在新窗口中打开:

<a href="javascript:popup();">Open</a>
<div class="CodeBlock">
line 1<br />
line 2<br />
line 3
</div>
<br /><br />
<a href="javascript:popup();">Open</a>
<div class="CodeBlock">
line 4<br />
line 5<br />
line 6
</div>

我正在尝试使用以下 javascript 捕获每个类:

function popup()
{
var generator=window.open('','name','height=400,width=500');

generator.document.write('<html><head><title>Popup</title>');
generator.document.write($(".CodeBlock").html());
generator.document.write('</body></html>');
generator.document.close();
}

这将打开第一个代码块,我现在尝试使用第二个 anchor 打开第二个代码块:

generator.document.write($.next(".CodeBlock").html());

但是 .next() 似乎不起作用;两个弹出窗口都是空的。

我做错了什么以及如何才能使其正常工作?

http://jsfiddle.net/Ax8Hz/23/

最佳答案

问题是如何将当前对象( anchor )的引用传递给您的函数。正确的做法是:

<a href="#" onclick="popup(this)">Open</a>

So, my solution is:

function popup(obj)
{
var myHtml = '<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Popup</title></head><body>' +
$(obj).next('.CodeBlock').html() +
'</body></html>';

var generator = window.open('','name','height=400,width=500');
generator.document.body.innerHTML = myHtml;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

<a href="#" onclick="popup(this)">Open</a>
<div class="CodeBlock">
line 1<br />
line 2<br />
line 3
</div>
<br /><br />
<a href="#" onclick="popup(this)">Open</a>
<div class="CodeBlock">
line 4<br />
line 5<br />
line 6
</div>

关于javascript - 如何在新窗口中弹出几部分文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34437180/

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