您的位置:首页 > Web前端 > JavaScript

【备忘】一段用于在论坛上插入Flash内容的JavaScript代码

2011-01-01 13:42 197 查看
这是我去年年初给我的一个朋友写的,不过后来因为种种原因没有利用上。

时间相隔了近一年,也不记得会不会有什么细节问题了,先bia上再说。

str = str.replace(/\[flash([=\s][^\]]+)?\](.+?)\[\/flash\]/ig, function ($0, $1, $2) {
var args = $1.split(/\s+/), u = args.shift() || $2, t = $2 || u;
if (u.charAt(0) == '=') u = u.substr(1);
if (u.substr(0, 7).toLowerCase() != 'http://') { u = 'http://' + u }
if (self.checklink(u, 1) == 1 && self.videonum < 1) {
var w = 425, h = 350, mach = /^(\S+\.swf)(\?\S*)?$/i.exec(u), qs = mach[2], prms = {};
if (qs) u = mach[1], prms.FlashVars = qs.substr(1);
if (u.indexOf('pl.bilibili.us') != -1) {
w = 540; h = 450;
}
self.videonum++;

if (window.ActiveXObject) {
prms.movie = u, u = "";
for (var n in prms)
u += ('<param name="' + n + '" value="' + prms
+ '" />');
return ('<object class="video" width="' + w + 'px" height="' + h + 'px" alt="' + t + '" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">' + u + '</object>');
} else {
prms.src = u, u = "";
for (var n in prms)
u += (n + '="' + prms
+ '" ');
return ('<embed class="video" width="' + w + 'px" height="' + h + 'px" alt="' + t + '" type="application/x-shockwave-flash" ' + u + '/>');
}
} else {
return ("<a href='" + u + "' target='_blank'>" + t + "</a>");
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: