我有一个小问题。当我在地址栏中执行javascript并且我在那里调用的函数返回一个值。页面移动到新页面。为了防止这种情况,我最后使用了一个void(0)。但是一旦完成,我如何捕获函数的返回值。
例如:
javascript:function f(){return 'success'} f();void(0);
当我在地址栏中输入时,如何捕获返回值?
答案 0 :(得分:0)
这样的事情:
javascript:function f(){return 42}; var r = f(); alert("The result is " + r); void(0);
答案 1 :(得分:0)
所以,如果我理解这是你想要的:
我不确定我理解你为什么要这样做,所以如果你描述的话,我的回答可能不会很好。
但是如果您在页面上创建了一个名为test()的函数,并且在地址栏中输入javascript时您在该页面上,则可以将数据发送到该函数,从而捕获参数中的值
javascript:function f(){return 'success'} test(f());void(0);
如果你在页面上有这个javascript,它将会被调用,并会出现一个带有“成功”文字的提醒。
<script type="text/javascript">
function test(x)
{
alert(x);
}
</script>
我必须说,但是我无法想象何时使用它而不是在页面上测试javascript函数。
答案 2 :(得分:0)
如果不导航文档,则无法更改地址栏。这是事实。
使用伪协议处理程序javascript
在地址栏中执行javascript时,请参阅我在How can empty JavaScript function actually do something?的答案