比如一个页面的源代码里有<body onload="abc();">....</body>
我想在abc();前插入一个init(); 请问如何做到.
原始的字符串里可能没有onload="",body 和 onload里也可能有其它字符串.
总之要考虑很多其它因素,万无一失.
多谢了
我想在abc();前插入一个init(); 请问如何做到.
原始的字符串里可能没有onload="",body 和 onload里也可能有其它字符串.
总之要考虑很多其它因素,万无一失.
多谢了
解决方案 »
- 多条重名input无刷新保存 有代码的帮忙 谢谢 最好能改我这个
- 什么是url连接类型
- phpnewnew不得了啊,,2个月突然冒出2块奖牌了
- Linux系统下,编写PHP扩展库,扩展库中需要调用外部C编写的外部库,请问怎么把这个外部库编译进去
- 基本问题 PHP页面代码 到底是运行在客户端(浏览器来解释他)还是服务端(网站服务器解释他)?
- 服务器数据库被攻击,不知问题何在
- 问高手:如何在给每篇文章的投票限制只能投1次?不想要无限刷屏刷次数。
- 关于require,愿高手指点迷津.
- 如何用正则表达式判断一个字符串中是否包含完整的html标签?
- 求救!急急急急急急急急急急急急急急急急急急急急!
- 菜鸟问题:表单传值
- PHP为什么不能创建彩色图片?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script>
function abc(){ // 原来abc方法
alert('abc');
} function init(){
alert('init');
} var tmp = abc;
abc = function(){ // 重置 abc方法
init();
tmp();
};
</script>
</head><body onload='abc()'>
</body>
</html>
$str='<body onload="abc();">.... ';
$reg = '/(<body.+?)onload="(.+?>)/i';
$str = preg_replace($reg, '$1onload="init();$2', $str);
echo $str;
?>
<?php
$str='<body onload="abc();">.... ';
$str = preg_replace('/(<body[^>]+)onload=[\"\']([^>]+)[\"\']/i', '$1onload="init();$2"', $str);
echo $str;
?>