0

是否可以在页面加载之前(或在页面上调用其他 javascript 代码之前)调用 JS 代码?例如:使用 webbrowser 控件,我导航到“http://google.com”,但是在执行 google 上的任何 js 代码之前,我想做一些类似“alert('one moment!');”的事情。

关于我如何做到这一点的任何想法?我猜我必须在它完全加载之前以某种方式修改 html,添加 js 函数,然后使用 invokescript 执行它,但不知道我会怎么做。

4

4 回答 4

1

我的第一个建议是在里面使用脚本<head> tag

<body>
    <head>
    <script type="text/javascript">
        // ...
    </script>

你可以使用 jQuery:

$(document).ready(function()
{
    // ...
});

或者:

window.onload = function()
{ 
    // ...
}

无论如何,您必须特别努力不做这种事情。这是一种非常糟糕的做法,尤其是在涉及用户交互的情况下。

于 2013-01-17T04:28:36.607 回答
0

您是否尝试实现加载屏幕?我通过在页面加载时强制回发,在回发中进行繁重的工作,然后在回发完成时隐藏加载屏幕来做到这一点。

于 2013-01-17T04:28:59.410 回答
0

将以下代码放在页面顶部。这甚至会在整个文档加载之前被调用

<script type="text/javascript">
    // add javascript code
    alert('Page not even loaded but the javascript runs');
</script>

这将做必要的事情。如果您希望脚本在 DOM 对象完成并且页面加载完成后运行,请在 document.ready 中执行

于 2013-01-17T04:36:08.407 回答
0

如果您使用 C#(Razor 渲染引擎),您可以在页面顶部使用以下代码

@if(true){
<script>
 // your script
</script>
}
于 2016-05-31T13:08:35.370 回答