a的代码(行内js写法)如下:
var s = '<a class = "view" href="javascript:void(0);" target="_blank" rel="external nofollow" onmouseover="show_pic(\''+value+ '\')"><img style="height:30px;" src="'+value+'" /></a>';
写法1:
function show_pic(value){
alert(value);
};
因为我的js代码写在<body>中,我以为是不放在<head>引起的,把代码cut到<head>中,还是报错。
写法2:
var show_pic = function(value){
alert(value);
}
这个写法还是报错。
写法3:
show_pic = function(value){
alert(value);
}
-----成功。
为什么不给函数赋值的变量添加var关键字,就可以有效果呢?
因为如果不添加var关键字的话,默认就是windows对象作为他的作用域,所以才能调用。
方法来源(感谢):