小编lev*_*vik的帖子

在页面DOM加载时(但在window.onload之前)收到通知

我知道有一些方法可以在页面主体加载时通知(在所有图像和第三方资源加载之前触发window.onload事件),但每个浏览器都有所不同.

在所有浏览器上都有明确的方法吗?

到目前为止,我知道:

  • DOMContentLoaded:在Mozilla,Opera 9和最新的WebKits上.这涉及为事件添加一个监听器:

    document.addEventListener("DOMContentLoaded",[init function],false);

  • 延迟脚本:在IE上,您可以发出带有@defer属性的SCRIPT标记,该标记将在BODY标记关闭后可靠地加载.

  • 轮询:在其他浏览器上,您可以继续轮询,但是甚至还有一个标准的东西要进行轮询,或者您是否需要在每个浏览器上执行不同的操作?

我希望能够不使用document.write或外部文件.

这可以通过jQuery简单地完成:

$(document).ready(function() { ... })
Run Code Online (Sandbox Code Playgroud)

但是,我正在编写一个JS库,并且不能指望jQuery始终存在.

javascript dom

7
推荐指数
1
解决办法
8514
查看次数

从Eclipse插件启动URL

我想让我的Eclipse插件导致用户的默认浏览器打开一个URL.这似乎是非常标准的行为,但我无法找到任何关于如何执行此操作的文档.

有人可以帮忙吗?

java eclipse eclipse-plugin

7
推荐指数
3
解决办法
9668
查看次数

防止浏览器在用户返回时重新加载页面

我似乎与大多数SO用户有相反的问题.我有一个很少更改的静态页面,我希望浏览器在用户快速导航回来时不要重新加载该页面.我无法找到任何简单的规则列表,这些规则详细列出了浏览器在反向导航时重新加载的时间,以及当浏览器没有重新加载时.

如果它有所不同,我的URL有一个查询字符串,并使用该https://协议提供服务.

html browser back-button reload

7
推荐指数
1
解决办法
1544
查看次数

表达式解析:如何标记化

我想在Javascript代码中标记类似Java/Javascript的表达式.我的输入将是一个包含表达式的字符串,输出需要是一个标记数组.

做这样的事情的最佳做法是什么?我是否需要迭代字符串或者是否有正则表达式为我执行此操作?

我需要这个能够支持:

  • 数字和字符串文字(单引号和双引号,带引号转义)
  • 基本的数学和布尔运算符和比较器(+, - ,*,/,!和,不,<,>等)
  • 使用递归进行对象访问的点和括号表示法(foo.bar,foo ['bar'],foo [2] [prop])
  • 带嵌套的括号
  • 三元运算符(foo?bar:'baz')
  • 函数调用(foo(bar))

eval()出于安全原因,我特别希望避免使用或任何类型的东西.此外,eval()无论如何都不会为我表达这个表达.

javascript regex parsing expression lexical-analysis

4
推荐指数
1
解决办法
4426
查看次数

如何在DIV元素上合成浏览器单击事件?

使用按钮,我可以调用click()它们上的方法生成一个单击.但是,DIV在所有浏览器上都没有此方法.然而,我可以将click事件侦听器附加到它们(通过设置.onclick="..."或添加事件侦听器).

有没有办法让我以编程方式"合成"对这样一个元素的点击,但不使用jQuery?理想情况下,这将不依赖于注册的侦听器的特定方式(因此简单地调用eval(div.onclick)对我不起作用),并且在所有现代浏览器中工作.

(对于好奇,我需要这个用于自动化测试,而不是欺骗用户.)

javascript browser dom dom-events

4
推荐指数
1
解决办法
2358
查看次数

OpenSocial小工具应用中的本地化

我正在尝试为OpenSocial应用程序添加多语言支持.我看到我可以在小工具XML标记中链接到我自己的消息包:

<Module>
  <ModulePrefs title="Hello" description="Message bundle demo">
     <Require feature="opensocial-0.7"/>
     <Locale lang="en" messages="http://example.com/hello/en_ALL.xml"/>
  </ModulePrefs>
  . . .
</Module>
Run Code Online (Sandbox Code Playgroud)

但是我如何实际从中提取价值呢?

javascript localization opensocial internationalization

2
推荐指数
1
解决办法
550
查看次数

找出 JS-ASP 中是否存在 URL 参数

我正在编辑其他人的代码,用 ASP 的服务器端 JS 编写,遇到了一个可能有一个非常简单的解决方案的问题。

我正在从 URL 参数输出一些代码,如下所示:

<%=Request.QueryString("param")%>
Run Code Online (Sandbox Code Playgroud)

问题是,如果参数不存在,我需要做其他事情。所以我试过:

<% 
  var param = Request.QueryString("param");
  if (!param) { param = "Some Default Value"; }
%>
<%=param%>
Run Code Online (Sandbox Code Playgroud)

问题是即使缺少 URL 参数,if似乎也永远不会评估为true。我猜这个!image条件在这里不起作用。我的测试条件应该是什么?

(请放弃有关转义 URL 参数以防止 XSS 的严厉警告。)

javascript asp-classic jscript

1
推荐指数
1
解决办法
1169
查看次数