这是脚本的 jQuery 变体(它不起作用):
<script language="javascript">
$("div.post-content").each(function(){
if($(this).innerHTML.indexOf("[/float]") != -1) {
pattern= /\[float=(.*?)\]([^\[]*)\[\/float\]/gi
$(this).html($(this).innerHTML.replace(pattern, "<span style='float: $1;'>$2</span>"))
}
})
</script>
这是纯 Javascript 变体(完美运行):
<script language="javascript">
posts=document.getElementsByTagName("div")
for(x in posts) if(posts[x].className=="post-content") {
post = posts[x].innerHTML;
if(post.indexOf("[/float]") != -1) {
pattern = /\[float=(.*?)\]([^\[]*)\[\/float\]/gi
posts[x].innerHTML = posts[x].innerHTML.replace(pattern, "<span style='float: $1;'>$2</span>")
}
}
</script>
该脚本的作用:
- 它找出所有带有 class 的 div
post-content
。 - 它检查是否有 bbcode 的结束标签。
- 通过使用正则表达式,它寻找给定 bbcode 标记的模式。
- 它用 html 元素替换 bbcode 标签。
我不知道我在这里做错了什么......