为什么%E2%80%8F被添加到我的Youtube嵌入代码中?

Eri*_*ric 3 javascript php youtube iframe jquery

我在Youtube上有一堆视频,我使用相同的代码嵌入.所有的视频都运行正常,直到我上传了最后一个.每次我现在执行代码时,%E2%80%8F会附加到上次上传的视频中,除非我特别要求子字符串(0,11); 请注意,如果没有这个黑客,代码仍然适用于我所有其他上传的视频.尽管代码现在适用于我的hack,但理解为什么会发生这种情况会很棒.

我的HTML标记如下所示:

<li><a href="#" class="help_video" id="oG-M25hnDII?">sidebars</a></li>
Run Code Online (Sandbox Code Playgroud)

我的javascript/jquery看起来像这样:

function openNewWindow(youtube_link) {
var youtube_link = youtube_link.toString();

youtube_link = youtube_link.substring(0,11);
 popupWin = window.open('/videos/help.php?youtube_link='+youtube_link,
 'open_window',
 'menubar, toolbar, location, directories, status, scrollbars, resizable, dependent, width=800, height=440, left=0, top=0')
 }

$(".help_video").click(function(){
openNewWindow($(this).attr('id'));
return false;
});
 });
Run Code Online (Sandbox Code Playgroud)

然后,我关联的help.php具有以下代码:

<iframe width="756" height="426" src="//www.youtube.com/embed/<?php echo $_GET['youtube_link'];?>?rel=0&vq=hd720" frameborder="0" allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud)

谢谢!

Tud*_*soi 7

该链接包括从右到左标记UTF8字符

看看这里:http: //en.wikipedia.org/wiki/Right-to-left_mark

这是一个非打印字符,所以你不会在屏幕上看到它,但是你的编辑器将它隐藏起来.

尝试

  • 使用另一个编辑器再次写入这部分代码
  • 设置代码编辑器以显示特殊字符(选项卡,换行符等).这样您就可以查看和删除rtl标记