-1

我的问题是:

我有一个 eibport:www.bab-tec.de/

您可以在现场部分查看现场演示。

现在的问题。

我想通过输入以下网址在此页面上启动或运行 javascript: http:// IP-EIBPORT /#javascript:click(Button)

或以另一种方式。

有人可以帮助我吗?

4

2 回答 2

1

您可能希望设置您的脚本以查找特定的哈希并基于该哈希运行函数。

switch(location.hash){
   case "#button":
         //click button
   break;
   case "#other":
         //do something else
   break;
}

/#button然后使用像或这样的网址/#other


完全按照您的意愿行事的方法如下,但不推荐!

eval(location.hash.substr(1));

使用这样的 url/#alert('test');会起作用,但这意味着任何人都可以链接到您的网站并执行 javascript,这是非常不安全的事情。

于 2013-04-03T19:42:54.343 回答
0

您不能在 URL 本身中包含调用 JavaScript 的代码。您可以做的最好的事情是在目标页面上有一个脚本来检查位置并做出相应的响应。

例如,假设您想sum通过 url 公开方法。如果有人要使用以下查询字符串加载您的页面:?method=sum&params=5,5,您可以有适当的逻辑来查找这些部分并处理它们。

var methods = {
    sum: function () {
        var result = 0; i = -1;
        while ( ++i < arguments.length ) 
            result += parseInt( arguments[i], 10 );
        return result;
    }
};

var method = location.search.match(/method=(.*)&/)[1],
    params = location.search.match(/params=(.*)$/)[1].split(",");

var result = methods[ method ].apply( this, params );

alert( result );

看看它在行动: http: //jsfiddle.net/jonathansampson/TF5ta/show/ ?method=sum¶ms=5,5

于 2013-04-03T19:42:43.890 回答