欢迎您来到懒之才-站长的分享平台!   学会偷懒,并懒出境界是提高工作效率最有效的方法!
首页 > 教程文档 > Js&Ajax > 获取难以索引的对象

获取难以索引的对象

2018-05-07 382 收藏 0 赞一个 0 真差劲 0 去评论

文档对象模型(DOM)的问题之一是:有时你要获取你要求的对象简直就是痛苦。例如,这里有一个函数询问用户要变换哪个图象:变换哪个图象

QQ截图20180507115107.png

你可以用下面这个函数:

function swapOne()
{
	var the_image = prompt("change parrot or cheese","");
	var the_image_object;
	if (the_image == "parrot")
	{
		the_image_object = window.document.parrot;
	} 
  else {
		the_image_object = window.document.cheese;
	}
	the_image_object.src = "ant.gif";
}

连同这些image标记:

<img src="stuff3a/parrot.gif" name="parrot">
<img src="stuff3a/cheese.gif" name="cheese">

请注意象这样的几行语句:

the_image_object = window.document.parrot;

它把一个鹦鹉图象对象敷给了一个变量。虽然看起来有点儿奇怪,它在语法上却毫无问题。但当你有100个而不是两个图象时怎么办?你只好写上一大堆的if-then-else语句,要是能象这样就好了:

function swapTwo()
{
	var the_image = prompt("change parrot or cheese","");
	window.document.the_image.src = "ant.gif";
}

不幸的是, JavaScript将会寻找名字叫the_image而不是你所希望的"cheese"或者"parrot"的图象,于是你得到了错误信息:”没听说过一个名为the_image的对象”。

还好,eval能够帮你得到你想要的对象。

function simpleSwap()
{
	var the_image = prompt("change parrot or cheese","");
	var the_image_name = "window.document." + the_image;
	var the_image_object = eval(the_image_name);
	the_image_object.src = "ant.gif";
}

如果用户在提示框里填入"parrot",在第二行里创建了一个字符串即window.document.parrot.然后包含了eval的第三行意思是:"给我对象window.document.parrot" -也就是你要的那个图象对象。一旦你获取了这个图象对象,你可以把它的src属性设为ant.gif.有点害怕?用不着。其实这相当有用,人们也经常使用它。

如果你不喜欢eval(),有另一种获取难以索引的对象的途径。

返回主目录
暂无界面图片

一、推荐使用迅雷或快车等多线程下载软件下载本站资源。

二、未登录会员无法下载,登录后可获得更多便利功能,若未注册,请先注册。

三、如果服务器暂不能下载请稍后重试!总是不能下载,请点我报错 ,谢谢合作!

四、本站大部分资源是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任.如果您发现本站有部分资源侵害了您的权益,请速与我们联系,我们将尽快处理.

五、如有其他问题,请加网站设计交流群(点击这里查看交流群 )进行交流。

六、如需转载本站资源,请注明转载来自并附带链接

七、本站部分资源为加密压缩文件,统一解压密码为:www.aizhanzhe.com

大家评论