我正努力让用户体验尽可能好。我有两个链接:登录和加入。当用户点击它们时,网站会变暗并弹出(当然,div,而不是新窗口),并显示相应的表格。
此外,这些链接具有有效的URL。这些表单可以通过专用URL实现。
我的问题是,当用户希望弹出窗口在新标签页或窗口中打开时,如何阻止弹出窗口打开?目前,如果有人从上下文菜单中选择Open in new tab
或Open in new window
,但是如果有人只是点击 cmd , ctrl 或 shift ,弹出窗口打开。这是不期望的,我想允许用户使用这些快捷方式将它们放在单独的选项卡/窗口中。
有没有更好的方法来解决这个问题,而不是听 cmd , ctrl 或 shift ?
答案 0 :(得分:0)
你可以在点击事件中检测到shift键和控制键(不确定是否是你的意思是"正在聆听.... pessed"因为我们可以检查点击事件而不是键盘事件。否则,我很抱歉你的时间)
$(document).click(function(e) {
if (e.ctrlKey) {
.... // Don't show the div dialog
} else if (e.shilfKey) {
.... // Don't show the div dialog
} else if (e.metaKey) {
.... // Don't show the div dialog
} else {
.... // Show the dialog.
}
});
09-01 00:06:24.414: W/System.err(9961): java.io.NotSerializableException: com.myprogram.main.Entity$1
09-01 00:06:24.414: W/System.err(9961): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1344)
09-01 00:06:24.414: W/System.err(9961): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1651)
09-01 00:06:24.414: W/System.err(9961): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1497)
09-01 00:06:24.414: W/System.err(9961): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1461)
09-01 00:06:24.415: W/System.err(9961): at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:959)
09-01 00:06:24.415: W/System.err(9961): at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:360)
09-01 00:06:24.415: W/System.err(9961): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1054)
09-01 00:06:24.415: W/System.err(9961): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1384)
09-01 00:06:24.415: W/System.err(9961): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1651)
09-01 00:06:24.415: W/System.err(9961): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1497)
09-01 00:06:24.415: W/System.err(9961): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1461)
真诚地希望这会有所帮助。