2

好吧,现在我对正在发生的事情感到非常困惑。我正在创建一个名为 unibar 的 safari 扩展(它是一个单独的工具栏扩展,而不是工具栏项),它是 Chrome 地址栏的克隆。到目前为止,我想要的是至少创建一个常规地址栏,并从那里构建。这是我的bar.html文件,它连接到工具栏。

<html>
    <head>
        <title>Unibar</title>
        <script type="text/javascript">
            function openInTab(source){
                safari.application.activeBrowserWindow.activeTab.url=source;
                }
        </script>
    </head>
    <body>
        <form name="form" onsubmit="javascript:openInTab(server+'safari/');">
            <input type="text" name="textfield" />
        </form>
    </body>
</html>

当我输入地址后按 Enter 键时,它会在浏览器窗口中显示 BAR.HTML!!!!怎么了?!?

4

2 回答 2

0

啊! 我找到了答案。我愚蠢地忘记在代码中声明什么是“服务器”。这是我的新代码。

<html>
<head>
    <title>Unibar</title>

    <script type="text/javascript">
    function openInTab(source){
        safari.application.activeBrowserWindow.activeTab.url=source;
        }
    </script>

</head>
<body>
<form name="form">
<input type="text" name="textfield" />
<input type="button" value="Go!" onclick="javascript:openInTab(document.form.textfield.value);" />
</form>
</body>
</html>
于 2010-09-20T21:59:01.060 回答
0

删除javascript:并添加return false;.

于 2010-09-20T01:44:40.350 回答