对于像按钮一样的锚点(例如,Stack Overflow页面顶部的问题,标签,用户等)或标签,如果用户意外选择了文本,是否有一种CSS标准方法来禁用突出显示效果?
我意识到这可以通过JavaScript来完成,并且有点谷歌搜索产生了仅Mozilla -moz-user-select选项.
是否有符合标准的方法来实现CSS,如果没有,那么"最佳实践"方法是什么?
我可以让Firefox不在链接上显示丑陋的虚线焦点轮廓:
a:focus {
outline: none;
}
Run Code Online (Sandbox Code Playgroud)
但是我怎样才能为<button>标签做这个呢?当我这样做:
button:focus {
outline: none;
}
Run Code Online (Sandbox Code Playgroud)
单击按钮时,按钮仍然具有点状焦点轮廓.
(是的,我知道这是一个可用性问题,但我想提供适合设计的焦点提示,而不是丑陋的灰点)
我有一个应用程序,我将内容加载到一个UIWebView并呈现此.我无法完全禁用用户交互,因为我希望用户能够单击链接.我只需要禁用用户选择.我发现你可以使用的互联网中的某个地方:
document.body.style.webkitUserSelect='none';
Run Code Online (Sandbox Code Playgroud)
我试着插入这个
[self.contentView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitUserSelect='none';"];
Run Code Online (Sandbox Code Playgroud)
在 webViewDidFinishLoad:
但是,它不起作用.我仍然可以在WebView中选择和复制文本.
什么想法可能会出错?
更新:这似乎只从iOS 4.3开始
双击html页面时,大多数浏览器选择双击的单词(或三键单击的段落).有没有办法摆脱这种行为?
请注意,我不想通过单击+拖动禁用常规选择; 即jQuery UI $('body').disableSelection()和document.onselectstartDOM事件不是我想要的.
在我的网络应用程序中,用户有时可以多次单击相同的按钮,跳过消息和事物,从而导致</a>选择.
那么如何使用Javascript(jQuery)来防止这种情况
我正在尝试两种选择:
这是我的代码:
function noMenu() {
return false;
}
function disableCopyPaste(elm) {
// Disable cut/copy/paste key events
elm.onkeydown = interceptKeys
// Disable right click events
elm.oncontextmenu = function() {
return false
}
}
function interceptKeys(evt) {
evt = evt||window.event // IE support
var c = evt.keyCode
var ctrlDown = evt.ctrlKey||evt.metaKey // Mac support
// Check for Alt+Gr (http://en.wikipedia.org/wiki/AltGr_key)
if (ctrlDown && evt.altKey) return true
// Check for ctrl+c, v and x
else …Run Code Online (Sandbox Code Playgroud) 我的网页上有一个表格,上面有复选框.我有jquery代码,允许我转换点击检查多行进行编辑/删除.但是,当我移动单击以选择范围时,范围内的所有文本都会突出显示.
有没有办法使用jquery或css来阻止文本突出显示?
- 编辑 -
HTML code
...
<tbody>
<tr>
<td>
<input type="checkbox">
</td>
<td>
<div class="cam_ip">192.168.200.78</div>
</td>
</tr>
<tr>
<td>
<input type="checkbox">
</td>
<td>
<div class="cam_ip">192.168.200.250</div>
</td>
</tr>
</tbody>
Run Code Online (Sandbox Code Playgroud)
可以有x行数.当我单击一行时,jquery工作,该行被标记为锚点,然后当我移动点击另一行时,它被标记为锚定范围,然后调用一个函数,该函数将循环遍历范围内的每一行并进行检查.使用的副作用e.shiftClick();是该范围内的所有文本都会突出显示.我需要阻止这种副作用.
我试图让它如此确定HTML页面上的某些文本和图像无法用光标突出显示,因此它看起来好像是背景的一部分.
这是我用JS编写的图表:
css:
-moz-user-select:none;
-khtml-user-select: none;
Run Code Online (Sandbox Code Playgroud)
适用于Chrome/FF,但在IE中,所有元素仍然是可选择的,当拖动周围的条形时看起来很奇怪.
如何在IE中使这个无法选择?
css ×5
javascript ×5
html ×4
jquery ×4
firefox ×1
highlight ×1
highlighting ×1
ios ×1
ios4 ×1
selectable ×1
selection ×1
uiwebview ×1
webkit ×1