有没有一种好方法来启用“在新窗口中打开链接”?在dom节点上的浏览器菜单选项,而不使链接跟随单击
Is there a good way to enable the "open link in a new window" browser menu option on a dom node, without making the link followed on-click?
我想有一个复杂的dom节点有"在新窗口打开链接"上下文菜单选项,就像你有任何标准标签链接。但我不想让那个dom节点在点击时打开链接。我有什么选择?
我现在做的选择给我带来了麻烦。我目前正在调用event.preventDefault()
的节点上设置一个单击处理程序。这样做的问题是,它阻止了标签内的所有内容的默认值。例如,如果我有一个复选框,则鼠标单击该复选框将变得不可选择。我可以在适当的地方使用stopPropagation()
,但这是令人难以置信的混乱,并可能在未来浪费我和我的团队时间。有没有不那么俗套的方法?
<a href="www.whatever.ninja">
<input type='checkbox'/>
<div contenteditable="true">Your cursor could be |here!</div>
<div>More content...</div>
</a>
我将在标记中添加一个类,然后使您的preventDefault调用仅应用于该类的元素。这样,你就可以样式化它,使它看起来不像一个链接。你在使用jQuery之类的东西吗?你可以这样做:
$(document).ready(function() {
$('a.non-clickable').click(function() {
$(this).preventDefault();
});
});
,然后在你的html:
<a href="mylink" class="non-clickable">Some link text</a>
相关文章:
- Cordova RSS馈送的链接不会在外部浏览器中打开
- 将下载链接从web浏览器传递给第三方应用程序
- 链接/按钮从子文件夹下载文件--浏览器只是浏览
- Cordova包装应用程序内部链接加载在应用程序中,外部链接加载在浏览器中
- 来自流星模板的 HTML 图像链接未由浏览器呈现
- 浏览器窗口中的应用内FB页面插件链接
- Angular Marked和Inappbrowser打开系统浏览器中的所有链接
- 转换链接在jsfiddle中有效,但在我的浏览器上无效
- javascript打开外部程序中的链接,而不是浏览器
- 链接适用于所有浏览器,除了 safari(php 代码)
- 在 Chrome 中打开电子邮件中的网址/链接,而不是默认浏览器 IE8
- 浏览器将超链接指定的href解释为完全不同的url
- 在系统浏览器中打开JSON链接-Cordova
- Sencha触摸,在新的浏览器窗口中打开网络链接
- 脚本链接格式以实现跨浏览器兼容性
- 用于浏览器检测和url链接的脚本
- 如何阻止Facebook应用内浏览器打开我的网站链接
- iOS Phonegap网页链接嵌入iframe开放系统浏览器,而不是iframe
- 在客户端/浏览器端存储照片(不是照片的链接)
- 通过花哨的链接获得一致的跨浏览器行为