将var full传递给函数b的最佳方法是什么?我不想使用全局变量.返回是唯一的选择.
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js" type="text/javascript"></script>
<style>
.aaa, .bbb, .ccc { width:100px; height:100px;background-color:#ccc;margin-bottom:5px;}
</style>
<body class="123">
<p id="ptest"></p>
<p class="aaa" id="aaaid"></p>
<p class="bbb" id="bbbid"></p>
<p class="ccc" id="cccid"></p>
<div></div>
</body>
<script type="text/javascript">
$("body").click(function(e){
var name = $(e.target)[0].nodeName;
var nameid = $(e.target)[0].id;
var classname = $(name+"#"+nameid).attr('class');
var full = name+"#"+nameid;
console.log(nameid);
function b(){
alert(full);
};
});
</script>
Run Code Online (Sandbox Code Playgroud)
您可以通过如下定义将变量传递给函数:
function b(x) {
alert(x);
}
Run Code Online (Sandbox Code Playgroud)
然后通过声明其名称并将变量作为参数传递来调用它:
b(full);
Run Code Online (Sandbox Code Playgroud)
所以在你的代码的上下文中:
$("body").click(function(e){
var name = $(e.target)[0].nodeName;
var nameid = $(e.target)[0].id;
var classname = $(name+"#"+nameid).attr('class');
var full = name+"#"+nameid;
console.log(nameid);
function b(x){
alert(x);
};
b(full);
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
50766 次 |
最近记录: |