Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在html静态页面中停止页面加载_Javascript_Html - Fatal编程技术网

Javascript 如何在html静态页面中停止页面加载

Javascript 如何在html静态页面中停止页面加载,javascript,html,Javascript,Html,是否有HTML(javascript)或其他静态HTML技术 可以: 停止页面加载(如果浏览器尚未下载) 停止页面呈现(从代码放置的位置) 停止执行javascript(代码所在位置) 简单地说,有这样的代码吗 <script>window.StopWhateverBelow()</script> window.StopWhateverBelow() 让浏览器完全忽略代码下面的内容 更新 我知道浏览器可能已经下载了全部内容。我想要的是,从代码开始,页面应该停止,例

是否有HTML(javascript)或其他静态HTML技术 可以:

  • 停止页面加载(如果浏览器尚未下载)
  • 停止页面呈现(从代码放置的位置)
  • 停止执行javascript(代码所在位置)
简单地说,有这样的代码吗

<script>window.StopWhateverBelow()</script>
window.StopWhateverBelow()
让浏览器完全忽略代码下面的内容

更新

我知道浏览器可能已经下载了全部内容。我想要的是,从代码开始,页面应该停止,例如:如果我把代码放在
访问者应该看到空白页面的后面,如果我把代码放在页面的中间,页面应该像你按下的ESC

回答

正如bukko所说,评论起了作用。但不是满的,只有一半 如果你把
放好,有:

对于HTML,但脚本将忽略这一点。

HTML是静态内容,因此服务器将读取您在文件中写入的内容,除非您将其注释掉。对于一个动态文件,比如你所要求的,你需要使用php来做这类事情。

你所要求的没有逻辑意义。原因有二:

  • 数据已经发送给用户(HTML/JS),所以即使您可以隐藏内容,数据也会在那里供用户查看(例如,如果他们查看源代码)
  • 为什么要停止“执行”页面?它加载简单的html结构并以可视化方式显示,您应该首先关注服务器站点(例如php)以隐藏或不发送内容
如果您想直观地隐藏元素tho,您可以使用CSS样式(隐藏div或类似的样式),只需将
style=“display:none;”“
添加到div中,如下所示:

<div style="display:none;">
This text will be downloaded by the user, but hidden from view due to CSS inline style
</div>

此文本将由用户下载,但由于CSS内联样式而无法查看
如果要添加注释(仅供参考),请使用注释格式:

<!-- this is a comment and will not show up to a user -->


注释参考:

您可以执行
window.stop()适用于除Internet Explorer之外的大多数浏览器。对于IE,我必须使用
document.execCommand('Stop')

如果您的页面上已经有html注释,@bukko的解决方案无法完全工作。html注释之后的内容将正常呈现

另一种尝试是:

document.write('<script type="text/undefined">')
将window.Stop()放在要停止渲染页面的任何位置

window.stop(); //works in all browsers but IE    
if ($.browser.msie) {document.execCommand("Stop");}; //works in IE, 

document.execCommand在IE中工作,但它确实停止了某些FF、NS和其他浏览器的功能。例如显示GIF的动画。使用“if browser is IE”可以使这两个代码在所有浏览器中都能完美工作。

只是与这个问题关系不大,但我认为它可能对某些人有用。如果您想在页面加载期间跳转到其他页面,请使用
window.location=“somepage.html”
或者您可以将用户重定向到上一页:
window.history.go(-1)在JavaScript条件语句中非常有用

如果使用ASP或PHP,HTTP协议会自动停止,但HTTPS协议不会自动停止

要停止它,请使用:

在ASP中:

dim r= accept.secure.protocol
r.onload=window.callback('c')

//to firefox,opera,safari

new clientObject(r).access()
// to chrome,ie

forEachElement(a==null);
PHP代码:

$a.window ;

所有这些脚本都通过post方法发送browserstring“elementcast”

您也可以像这样隐藏正文:

var style = document.createElement("style");
style.innerHTML="body { display:none !important; }";
document.getElementsByTagName("HEAD")[0].appendChild(style);

停止方法可以中断已经开始加载的内容

如果要加载高于某个点的所有内容,并跳过低于某个点的所有内容:

<p>Everything works above this point.</p>
<pre style="display: none !important;">
<p>As long as the PRE tag remains open, 
nothing works below this point</p>
<script>document.write('Nope');
在这一点之上,一切都会起作用

只要预标签保持打开状态, 在这一点之下没有任何东西起作用

文件。写('Nope');
这没有任何意义。您想做什么?您是否要求能够添加评论,而不让普通访客看到?阻止浏览器解释任何东西都没有意义…@LoïsDiQual这种负面评论是不合适的。我刚刚偶然发现了一个很好的使用案例(5年多之后!),我很高兴这个问题得到了很好的回答,而不是因为有点不寻常而被否决。如果你想构建动态页面,还有其他选择,不仅仅是phpWhy,你需要为这些功能导入jQuery吗?它们应该在没有jQuery的情况下工作。浏览器(Chrome)在尝试使用IE 11执行相同操作后,会自动使用
关闭它。脚本标记会自动关闭Pretty fun hack,但在某些情况下在MS Edge中似乎不起作用。在我的例子中,这比建议的,
window.stop()效果更好(depsite被黑客攻击),因为使用
stop
,已经加载的元素会突然显示,这在重定向之前可能会非常不和谐。使用此选项,页面仍将呈现,无论显示时间有多短。
var style = document.createElement("style");
style.innerHTML="body { display:none !important; }";
document.getElementsByTagName("HEAD")[0].appendChild(style);
<p>Everything works above this point.</p>
<pre style="display: none !important;">
<p>As long as the PRE tag remains open, 
nothing works below this point</p>
<script>document.write('Nope');