在Blogger中正确使用外部JavaScript

时间:2017-05-08 16:28:02

标签: javascript jquery blogger

我在github中创建了一个javascript文件:
https://github.com/yashas123/CTGod/blob/master/youtubebar.js

js文件中的代码如下:

function youTube(a,b,c,d)
{
 return ("<iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+a+"' width='210'/><iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+b+"' width='210'/><iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+c+"' width='210'/><iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+d+"' width='210'/>");
}

我使用rawgit.com创建CDN链接并将其放在脚本源(src)中 在Blogger&gt;&gt;编辑HTML中,在我想要它的适当位置我输入代码:

<script src='https://cdn.rawgit.com/yashas123/CTGod/1bc76937/youtubebar.js' type='text/javascript'>
var a="zK5zn44YzKA";
var b="3d21j6xOejU";
var c="U8gD0XiOOL4";
var d="cLnR-L6fNqs";
document.write(youTube(a,b,c,d));
</script> 

当我没有使用我现在的代码放入外部js文件并正常使用它时它起作用了。代码如下所示:

<script type='text/javascript'>
var a="zK5zn44YzKA";
var b="3d21j6xOejU";
var c="U8gD0XiOOL4";
var d="cLnR-L6fNqs";
function youTube(a,b,c,d)
{
  return ("<iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+a+"' width='210'/><iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+b+"' width='210'/><iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+c+"' width='210'/><iframe allowfullscreen='1' frameborder='0' height='140' src='https://www.youtube.com/embed/"+d+"' width='210'/>");
}

document.write(youTube(a,b,c,d));
</script>

现在,我想知道为什么代码,当放入外部js文件时不起作用。
如果我需要更改我的js文件源,请告诉我上传的位置以及如何使用它的最佳方式。

1 个答案:

答案 0 :(得分:2)

您必须使用单独的脚本标记来呈现外部js文件,如下所示

<script src='https://cdn.rawgit.com/yashas123/CTGod/1bc76937/youtubebar.js' type='text/javascript'/>

<script type='text/javascript'>
  var a="zK5zn44YzKA";
  var b="3d21j6xOejU";
  var c="U8gD0XiOOL4";
  var d="cLnR-L6fNqs";
  document.write(youTube(a,b,c,d));
</script>