如何在" JScript警报"对话框中放置指向网页的链接?

时间:2020-03-05 18:51:41  来源:igfitidea点击:

我想在警报对话框中放置指向网页的链接,以便我可以更详细地说明如何解决导致创建对话框的错误。

如何使对话框显示如下内容:

There was an error.  Go to this page to fix it.
wwww.TheWebPageToFix.com

谢谢。

解决方案

回答

你不能警报框不支持html。我们应该在页面的一部分上显示错误,无论如何它比JS警报要好。

回答

或者使用window.open并在其中放置链接。

回答

即使可以," alert()"框通常也是模态的,因此从一个框打开的任何页面都必须在新窗口中打开。恼人的!

回答

alert("There was an error. Got to this page to fix it.\nwww.TheWebPageToFix.com");

这是我们可以通过JavaScript警报执行的最佳操作。替代选择是尝试打开一个看起来像对话框的新小窗口。使用IE,我们可以以模式方式打开它。

回答

如果确实需要,可以覆盖alert()函数的默认行为。并不是说我们应该这样做。

这是一个使用YUI库的示例,但我们不必使用YUI即可:

基于YUI的警报框替换了我们难看的JavaScript警报框

回答

我们不能,但是这里有一些选择:

  • window.open()-创建自己的对话框
  • 使用提示()并指示用户复制URL
  • 使用JavaScript直接将其导航到url(也许在使用Confirm()询问之后)
  • 使用[FIX IT]按钮在页面上添加一个div并取消隐藏
  • 使用JavaScript将修补程序的url放入用户剪贴板(不推荐)

回答

我们可以尝试询问他们是否希望通过window.prompt访问:

if(window.prompt('Do you wish to visit the following website?','http://www.google.ca'))
  location.href='http://www.google.ca/';

另外,Internet Explorer支持模式对话框,因此我们可以尝试显示以下模式之一:

if (window.showModalDialog)
   window.showModalDialog("mypage.html","popup","dialogWidth:255px;dialogHeight:250px");
else
   window.open("mypage.html","name","height=255,width=250,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,modal=yes");