B站官方的代码粘贴过来后会有点小问题,需要修改一下代码,把下列代码(加一个id属性和width属性)
<iframe src="//player.bilibili.com/player.html?aid=456375452&bvid=BV1p5411e7F6&cid=215991630&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"></iframe>
改成
<iframe id="spkj" src="//player.bilibili.com/player.html?aid=456375452&bvid=BV1p5411e7F6&cid=215991630&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" width="100%"></iframe>
<script type="text/javascript">
document.getElementById("spkj").style.height=document.getElementById("spkj").scrollWidth*0.76+"px";
</script>
完成之后直接粘贴到文章里面即可,不过Typecho自带的Markdown解析库解析不了部分HTML代码,需要在代码上下加上!!!,例如:
!!!
<iframe id="spkj" src="//player.bilibili.com/player.html?aid=456375452&bvid=BV1p5411e7F6&cid=215991630&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" width="100%"></iframe>
<script type="text/javascript">
document.getElementById("spkj").style.height=document.getElementById("spkj").scrollWidth*0.76+"px";
</script>
!!!
或者安装一个插件,具体查看官方文档。7.0版本的主题插件失效。
官方文档:无法解析HTML代码
还有一种方案就是不需要插件,把下列代码放入控制台-外观-设置外观-开发者设置-自定义JavaScript
<script type="text/javascript">
document.getElementById("spkj").style.height=document.getElementById("spkj").scrollWidth*0.76+"px";
</script>
然后把官方提供的代码替换成下列内容即可。
<iframe id="spkj" src="//player.bilibili.com/player.html?aid=456375452&bvid=BV1p5411e7F6&cid=215991630&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true" width="100%"></iframe>
演示如下:
另外还可以修改B站链接的参数,具体如下
key | 说明 |
---|---|
cid | 视频真正的ID,由于每个av号下不一定只有一个视频,所以B站用cid来管理视频的真正ID,如果视频专辑下只有一个视频的话,那么cid也就无效了,也可以不写。 |
aid | 视频的AV号,就是B站的 AVxxxx 后面的数字,一般表示这个视频所属的专辑。 |
bvid | 视频的BV号,2020年三月的时候, B站把AV号根据一定的算法转成这个了BV号,如果填了bvid, 那么aid不填也可以 |
page | 第几个视频, 起始下标为 1 (默认值也是为1),就是B站视频, 选集里的, 第几个视频 |
as_wide | 是否宽屏,1: 宽屏, 0: 小屏 |
high_quality | 是否高清,1: 高清, 0: 最低视频质量(默认),如视频有 360p 720p 1080p 三种, 默认或者 high_quality=0 是最低 360p,high_quality=1 是最高1080p(要登录后才是1080p,否则是480p) |
danmaku | 是否开启弹幕,1: 开启(默认), 0: 关闭 |
t | 打开时, 自动跳转到某个时间, 并且自动播放(单位秒),比如 t=60, 那么自动跳转到1分钟, 且自动播放 |