文档.write <除非我使用 < ,否则不会工作我可以做什么来生成链接?

发布于 2024-12-08 12:30:29 字数 601 浏览 0 评论 0 原文

此代码似乎仅在我使用 &lt; 而不是 <&gt; 而不是 > 时才起作用。 那么我怎样才能让它工作,以便它链接到合法的视频所有者的频道。

<script type="text/javascript">
    function youtubeFeedCallback(json){
        document.write("&lt;a href='youtube.com/user/"+json["data"]["uploader"]+"'&gt;"+json["data"]["uploader"]+"&lt;/a&gt;");
    }
</script>
<script type="text/javascript" src="http://gdata.youtube.com/feeds/api/videos/4TSJhIZmL0A?v=2&alt=jsonc&callback=youtubeFeedCallback&prettyprint=true"></script>

this code only seems to work when I use < instead of < and > instead of > so how can I get it to work so that it links to the rightful video owner's channel.

<script type="text/javascript">
    function youtubeFeedCallback(json){
        document.write("<a href='youtube.com/user/"+json["data"]["uploader"]+"'>"+json["data"]["uploader"]+"</a>");
    }
</script>
<script type="text/javascript" src="http://gdata.youtube.com/feeds/api/videos/4TSJhIZmL0A?v=2&alt=jsonc&callback=youtubeFeedCallback&prettyprint=true"></script>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

开始看清了 2024-12-15 12:30:29
var text = json["data"]["uploader"], 
url = "youtube.com/user/" + text;
text.link(url);
var text = json["data"]["uploader"], 
url = "youtube.com/user/" + text;
text.link(url);
尸血腥色 2024-12-15 12:30:29

使用另一种注入方法可能比 document.write() 更好,例如:

<script type="text/javascript">
    function youtubeFeedCallback(json){
        var user = json.data.uploader,
            a = document.createElement("a");

        a.href = 'http://www.youtube.com/user/' + user;
        a.appendChild( document.createTextNode(user) );
        document.getElementsByTagName("body")[0].appendChild( a );
    }        
</script>
<script type="text/javascript" src="http://gdata.youtube.com/feeds/api/videos/4TSJhIZmL0A?v=2&alt=jsonc&callback=youtubeFeedCallback&prettyprint=true"></script>

您可能需要更改链接插入的位置,但想法是远离 >document.write() 并使用纯 DOM 插入。

希望有帮助。干杯!

it would probably be better to use another injection method than document.write(), such as:

<script type="text/javascript">
    function youtubeFeedCallback(json){
        var user = json.data.uploader,
            a = document.createElement("a");

        a.href = 'http://www.youtube.com/user/' + user;
        a.appendChild( document.createTextNode(user) );
        document.getElementsByTagName("body")[0].appendChild( a );
    }        
</script>
<script type="text/javascript" src="http://gdata.youtube.com/feeds/api/videos/4TSJhIZmL0A?v=2&alt=jsonc&callback=youtubeFeedCallback&prettyprint=true"></script>

you may need to change the location the link gets inserted in, but the idea is to move away from document.write() and use pure DOM insertion.

hope that helps. cheers!

旧情勿念 2024-12-15 12:30:29

json["data"]["uploader"] 可能包含一些无效字符,这些字符会破坏您的 html 代码。 (比如单引号)

json["data"]["uploader"] may contains some invalid characters that spoils your html code. (Such as a single quote)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文