为什么我不能从内联锚点调用此对象的函数?

时间:2011-01-25 20:11:07

标签: javascript html css jsfiddle

HTML:

<a href="javascript:alert('Hey.')">Alert</a><br/>
<a href="javascript:alert('In anchor:\n' + objection.sustained());">Alert</a>

使用Javascript:

var objection = {
    sustained : (function() {return ("accroches-toi a ton reve")})
};

alert("In script: \n" + objection.sustained());

$("outdat").text( +"<br/>\n");

Working sample

在这里好奇,为什么我不能从锚标记中调用objection.sustained(),但是可以从脚本区域执行此操作?

使用锚时似乎甚至不知道对象存在。发生在几个主要的浏览器中,所以我相信这是设计的?

2 个答案:

答案 0 :(得分:3)

在JSFiddle上使用No Wrapper(head)或No Wrapper(body)

答案 1 :(得分:2)

可变范围。

Fiddle将变量放在文档加载范围中,因此您的锚代码无法看到它。正如@ kjy112所提到的,从这些代码块中删除它,一切都应该正常工作。