作者bryanliu (QQ)
看板Ajax
标题[问题] eval函式的运作
时间Fri Apr 6 15:49:54 2007
eval函式的功能不是将字串转为运算式在传回结果吗??
但是这个范例我有点搞糊涂了
在下面程式码的最後
他是由很多变数名称串起来的如:doc ,sty...
另外中间还有 ".top ="
我一开始是想这个eval函式是把 doc到 ".top ="这部份串起来
可是又感觉怪怪的...
以下是部分程式码
希望高手能给个指导
--
<style type="text/css">
<!--
.tooltiptitle{COLOR: #FFFFFF; TEXT-DECORATION: none; CURSOR: Default;
font-family: 新明细体; font-weight: bold; font-size: 8pt}
.tooltipcontent{COLOR: #000000; TEXT-DECORATION: none; CURSOR: Default;
font-family: 新明细体; font-size: 15pt}
#ToolTip{position:absolute; width: 100px; top: 0px; left: 0px; z-index:4;
visibility:hidden;}
-->
</style>
<script language = "javascript">
<!--
var ie = document.all ? 1 : 0;//取得HTML所有标签物件
var ns = document.layers ? 1 : 0;
var initialize = 0;
var Ex, Ey, topColor, subColor, ContentInfo;
if(ie){doc = "document.all."; sty = ".style"}
if(ie){
Ex = "event.x";
Ey = "event.y";
topColor = "#000000";
subColor = "#3399CC";
}
function MoveToolTip(layerName, FromTop, FromLeft, e){
if(ie){eval(doc + layerName + sty + ".top = " + (eval(FromTop) +
document.body.scrollTop))}
完整程式码:
http://www.cs.ccu.edu.tw/~u93410059/test.rar
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.79.248
※ 编辑: bryanliu 来自: 61.224.79.248 (04/06 16:07)
1F:推 ephesians:串起来是指定运算式,然後eval这行指定运算式 04/06 16:56
※ 编辑: bryanliu 来自: 61.224.147.112 (04/06 17:02)
2F:推 bryanliu:所以他是把 ".top ="後面的东西assign给前面那一个物件就 04/06 17:44
3F:→ bryanliu:是了?? 04/06 17:45
4F:推 ephesians:不是,是合并起来是一个字串,写着完整的指定式 04/06 18:29
5F:→ ephesians:最後,(左边的)eval将字串解译成正确的指定式 04/06 18:30
6F:推 bryanliu:所以eval函式里面有assign叙述的话 只会变成完整的assign 04/06 20:19
7F:→ bryanliu:的叙述 不会直接把右边的直传给左边 是这样吗?? 04/06 20:20
8F:推 ephesians:eval只有一个功能,把正确的文字转换成运算式 04/06 23:15