写了一个小游戏,但是只能运行一个function,后面的都没有···求教大神x7~

求教大神!!!我在js中写了一个for,想通过for对一个url传递不同的参数,当点击图标时获得不同的参数值,为什么测试时,只能获取到数组最后一个值?代码如下: - 开源中国社区
当前访客身份:游客 [
当前位置:
& for(var k=0;k&k++){
& & & & marker[k] = new BMap.Marker(new BMap.Point(xx[k], yy[k]));&
& & & & map.addOverlay(marker[k]); &&&
& & & & carname=names[k];
& & & & marker[k].addEventListener(&click&, function(){
& & & & window.open('http://localhost:8080/gps/onemove/oneCar.jsp?carname='+carname,'_blank');
& & & & });
共有8个答案
<span class="a_vote_num" id="a_vote_num_
如果没理解错的话,你是想将marker数组中的对象增加click事件
看代码你用的应该也是jquery
所以建议你把
&marker[k].addEventListener(&click&, function(){
&marker[k].bind(&click&, function(){&
--- 共有 1 条评论 ---
其实我没有用jQuery,只是想利用百度地图做一个gps,上面的函数是百度地图的api。虽然没能成功,但感谢您的帮助,多谢
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
用闭包就可解决
for (var k = 0; k & k++) {
(function(index) {
marker[index] = new BMap.Marker(new BMap.Point(xx[index], yy[index]));
map.addOverlay(marker[index]);
carname = names[index];
marker[index].addEventListener(&click&, function () {
window.open('http://localhost:8080/gps/onemove/oneCar.jsp?carname=' + carname, '_blank');
--- 共有 1 条评论 ---
不行啊,没有效果啊
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
for(var k=0;k&k++){
(function(j){
marker[j] = new BMap.Marker(new BMap.Point(xx[j], yy[j]));
map.addOverlay(marker[j]);
carname=names[j];
marker[j].addEventListener(&click&, function(){
window.open('http://localhost:8080/gps/onemove/oneCar.jsp?carname='+carname,'_blank'); });
--- 共有 1 条评论 ---
还是不行啊
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
引用来自“Machine”的答案 用闭包就可解决
for (var k = 0; k & k++) {
(function(index) {
marker[index] = new BMap.Marker(new BMap.Point(xx[index], yy[index]));
map.addOverlay(marker[index]);
carname = names[index];
marker[index].addEventListener(&click&, function () {
window.open('http://localhost:8080/gps/onemove/oneCar.jsp?carname=' + carname, '_blank');
不错,这就是闭包的典型应用场景
--- 共有 1 条评论 ---
我试过了,真的不行,新页面总是获得的是数组中的最后一个值,(数组的值也的确都不相同)
(3年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
lz可以把for循环里的东西拿出来放到一个单独的function里
<span class="a_vote_num" id="a_vote_num_
这个用闭包就可以了
<span class="a_vote_num" id="a_vote_num_
2个字:闭包。
在浏览器的console里运行分别运行一下下面2行代码,你就明白了。
for(var i=0;i&3;i++){setTimeout(function(){alert(i);},i*1000)}
for(var i=0;i&3;i++){(function(k){setTimeout(function(){alert(k);},i*1000);})(i);}
<span class="a_vote_num" id="a_vote_num_
引用来自“技术宅”的答案引用来自“Machine”的答案 用闭包就可解决
for (var k = 0; k & k++) {
(function(index) {
marker[index] = new BMap.Marker(new BMap.Point(xx[index], yy[index]));
map.addOverlay(marker[index]);
carname = names[index];
marker[index].addEventListener(&click&, function () {
window.open('http://localhost:8080/gps/onemove/oneCar.jsp?carname=' + carname, '_blank');
不错,这就是闭包的典型应用场景for(var k=0;k&k++){&
& & & & marker[k] = new BMap.Marker(new BMap.Point(xx[k], yy[k])); &
& & & & map.addOverlay(marker[k]); & &&
& & & & carname=names[k];&
& & & & marker[k].addEventListener(&click&, function(carname){&
&&&&&&&&&&&&return function(){
&&&&&&&&&&&&&&&&window.open('http://localhost:8080/gps/onemove/oneCar.jsp?carname='+
carname,'_blank');
&&&&&&&&&&&&
& & & & }(carname));&
更多开发者职位上
有什么技术问题吗?
MrHello...的其它问题
类似的话题我是一个不萌的新人···问一下各位大神如何选取版本···_亚陆风云吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:1,443贴子:
我是一个不萌的新人···问一下各位大神如何选取版本···
我是玩了钢4之后发现P社的游戏是这么好玩,然后就过来了,加上看了一些UP的视频,就想玩一下这个游戏···但是又不知道该如何选取版本··求各位大神指教···
报考一级消防师要求,学尔森13年考培经验为您解答,更有百度信贷分期付学费.
1.150 再加
mod亚陆风云6,0
因为6.0是中文版的
玩起来的话好些
中文最新1.15,对应MOD 6.2英文最新1.17,对应MOD 7.4
贴吧热议榜
使用签名档&&
保存至快速回贴

我要回帖

更多关于 酷派大神f1 的文章

 

随机推荐