我正在尝试显示比正常更大的""提示()框中的文本量。在Internet Explorer 11中调用javascript prompt()函数时,我的大部分文本都被隐藏了。它似乎只支持2行文本。 Chrome,Firefox和Opera似乎运行良好。这似乎只是一个IE问题。
这是一个演示问题的小提琴:JSFiddle Example
prompt("Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.");
我只能看到这个文字" Lorem Ipsum只是印刷和排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是业界标准的虚拟文本,当时"。其余部分未显示。
我害怕我已经知道了答案,但是有没有理由为什么会这样?我更喜欢使用prompt()而不使用自定义模式。
答案 0 :(得分:5)
您可能不应该使用window.prompt
开头。由于它阻塞了线程,因此很大程度上不受欢迎,因此可以暂停您的应用程序。今天的网络已经开始利用JavaScript的异步性质;这应该使我们远离alert
,prompt
等等。
目前,Immersive Internet Explorer(" Metro"),xbox上的Internet Explorer或Windows Web应用程序(以前称为Windows应用商店应用程序)不支持prompt
。相反,我们鼓励您利用第三方工具和库(例如Bootstrap,jQuery UI等)来满足这些类型的需求。
所有这一切都说,这是Internet Explorer和其他现代浏览器之间的真正区别,因此我在内部为IE团队开辟了一个问题进行讨论。
答案 1 :(得分:2)
IE版本的提示不会动态调整大小。
您应该只使用小消息的提示,而不是整个段落。 像
电子邮件:
或
用户名:
您应该在网页上内嵌任何解释内容。或者更好的是,根本不使用提示符并使用内联表单。
答案 2 :(得分:1)
您可以使用其中一种警报,甚至比模态更简单:
如果您使用Bootstrap,Bootboxjs适合您: http://bootboxjs.com/
Sweetalert既简单又酷: http://tristanedwards.me/sweetalert