Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.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放入<;车身>;部门?_Javascript_Html_Xhtml - Fatal编程技术网

我可以创建一个不使用Javascript的HTML弹出窗口吗?或者我可以将Javascript放入<;车身>;部门?

我可以创建一个不使用Javascript的HTML弹出窗口吗?或者我可以将Javascript放入<;车身>;部门?,javascript,html,xhtml,Javascript,Html,Xhtml,我必须创建一个弹出窗口,当用户点击链接时显示 我认为我不能使用Javascript,因为我无法访问完整的模板,所以我无法将Javascript放入页面的部分(我无法修改它) 我可以使用Javascript创建一个纯HTML弹出窗口吗?或者,我可以将Javascript声明到HTML代码的部分,而不是部分吗 Tnx Andrea您可以使用HTML和CSS来实现这一点,如 要回答第二个问题,通常也可以将Javascript放在页面的部分。如果没有Javascript,您无法做到这一点,但是您可以将脚

我必须创建一个弹出窗口,当用户点击链接时显示

我认为我不能使用Javascript,因为我无法访问完整的模板,所以我无法将Javascript放入页面的
部分(我无法修改它)

我可以使用Javascript创建一个纯HTML弹出窗口吗?或者,我可以将Javascript声明到HTML代码的
部分,而不是
部分吗

Tnx


Andrea

您可以使用HTML和CSS来实现这一点,如


要回答第二个问题,通常也可以将Javascript放在页面的
部分。

如果没有Javascript,您无法做到这一点,但是您可以将脚本标记放在页面的任何位置,它应该可以工作,所以尝试一下

<div>
   <h1 id="test">New Content</h1>
   <script>
      var test = document.getElementById('test');
      test.addEventListener('click', function() {
         alert('clicked');
      });
   </script>
</div>

新内容
var test=document.getElementById('test');
test.addEventListener('click',function(){
警报(“点击”);
});

允许在
是的,您可以在纯html和css中执行此操作。诀窍是使用
:target
伪选择器。带有
:target
的规则将在url定位点与特定id匹配时匹配。您可以通过创建普通定位点链接来更新url定位点。这确实有轻微的跳跃效果,因为我们使用了锚,但这是可能的

例如:

有关
:target
的更多信息,请参阅,这是一个更漂亮的灯箱


为了获得更大的灵活性,您可以随时添加javascript。如果您的javascript不是必需的,通常最佳做法是将javascript放在正文的底部,或者添加带有async属性的脚本标记,以便在加载时不会暂停内容的呈现。

这里您可以找到一个演练 它将打开弹出窗口并模糊模式参考底图。下面是它的外观
codepen.io/dsheiko/pen/jCcld


它还描述了如何使用诸如按Esc键关闭、单击外部模式内容以及为IE8提供JavaScript回退等功能来增强它。

没有JavaScript,这是不可能的。@Connor这根本不是真的;你查过链接了吗?它受到浏览器兼容性的限制,如果你关心IE6,那么这个特殊的技巧对于触摸设备来说也是有问题的,但也有其他的方法。@Pointy好的,我可以接受这个骇人的解决方案,但在这个答案提供的链接中没有类似的内容,这都是悬停填充。div overlay不是一个新窗口。这更好,但不是OP想要什么。@Anthony好吧,也许吧,但根本不清楚OP到底想要什么。是的,他说了“链接”,但我不愿意相信他使用这个词的目的是为了真正具体,因为他显然对问题空间缺乏信心。这就是
元素的目的,但它几乎没有浏览器支持。@Anthony据我所知,
不是关于“对话框”但是关于“马和蟾蜍的对话”;也就是说,。那时,
对话框
是定义列表的不同容器。现在是:“dialog元素表示用户与之交互以执行任务的应用程序的一部分,例如对话框、检查器或窗口。”——但我确实支持horse和toad对话。
<a href="javascript:void(0);" onclick="window.open(document.URL, '_blank', 'height=200,location=yes,width=350,scrollbars=yes,status=yes');">Link</a>
<a href="#modal">Click to Trigger The Modal</a>
<div id="modal"> I am a Hidden Modal</div>
#modal {
  display: none;
  width: 300px;
  height: 100px;
  border:1px solid #CCC;
  background:#EEE;
}

#modal:target {
  display: block;
}