javascript - 可点击 javascript 元素中的 mozilla 蓝色突出显示颜色

标签 javascript highlight mozilla

我对 Mozilla 和经典的蓝色突出显示颜色有疑问。但是突出显示的文本没有问题,我的意思是,我一直在搜索并尝试了::-moz-selection css 属性,它工作正常,但真正的问题是我的页面上有一些可点击的 javascript 事件,例如...

CSS

figure:nth-of-type(1) { 
    -o-transform: translate(60%,-25%) rotate(-10deg) scale(0.60);
    -webkit-transform: translate(60%,-25%) rotate(-10deg) scale(0.60);
    -moz-transform: translate(60%,-25%) rotate(-10deg) scale(0.60);
    transform: translate(60%,-25%) rotate(-10deg) scale(0.60); }

figure.active:nth-of-type(1) {
    z-index:10; 
    box-shadow:0px 0px 50px black;
    -o-transform: translate(-6.5%,-13.5%) rotate(0deg) scale(0.70); 
    -webkit-transform: translate(-6.5%,-13.5%) rotate(0deg) scale(0.70); 
    -moz-transform: translate(-6.5%,-13.5%) rotate(0deg) scale(0.70); 
    transform: translate(-6.5%,-13.5%) rotate(0deg) scale(0.70); }

JavaScript

<script type="text/javascript" >
    <!--
    function listen() {
        var images=document.getElementsByTagName("figure");
        var i=images.length;
        while(i--){images[i].addEventListener('click', focusImage);}
    }
    function heard() {
        var images=document.getElementsByClassName("active");
        var i=images.length;
        while(i--){images[i].addEventListener('click', unfocusImage);}
    }   
    function focusImage(x){
        var target=x.target;
        var images=document.getElementsByTagName("figure");
        var i=images.length;
        while(i--){images[i].className=""; images[i].addEventListener('click', focusImage)}
        if (target.tagName=="FIGURE"){target.className='active';}
        target.removeEventListener('click', focusImage)
        heard();
    }   
    function unfocusImage(x){
        var target=x.target;
        if (target.className=="active"){target.className='';}                   
        target.addEventListener('click', focusImage);
    }
    //-->

    window.addEventListener('load', listen);                
</script>   

HTML

<figure> 
    <img src="<?php bloginfo('template_directory'); ?>/assets/art_home/01.jpg"  alt="" />
</figure>

所以...当我单击时,图形/img 会变成蓝色突出显示(如果我单击另一个地方,它就会消失)...

我尝试了我知道的所有 css 选择器(::selection、::-moz-selection、visited、active 等),在 Chrome 中我没有任何问题。

请帮忙!!

最佳答案

根据此 SO 帖子,此解决方案应该适用于所有非 ie 浏览器(和 IE 10):

Prevent text selection after double click

在你的 CSS 中:

.no_selection {
    -webkit-user-select: none; /* webkit (safari, chrome) browsers */
    -moz-user-select: none; /* mozilla browsers */
    -khtml-user-select: none; /* webkit (konqueror) browsers */
    -ms-user-select: none; /* IE10+ */
}

在 HTML 中:

<figure class="no_selection"> 
    <img src="<?php bloginfo('template_directory'); ?>/assets/art_home/01.jpg"  alt="" />
</figure>

关于javascript - 可点击 javascript 元素中的 mozilla 蓝色突出显示颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18599245/

相关文章:

javascript - 我的日期选择器工作得不太好

c# - 如何在 C# 窗体中突出显示 RichTextbox 中的完整行

javascript - Mozilla 中的 iFrame URL

javascript - React 状态数组在渲染中给出 null 错误

javascript - 如何使客户网站的访问者始终检索第 3 方 .js 库的最新版本

python - 在 Ubuntu 上的 Tkinter Python 中将突出显示的文本分配/存储为变量

javascript - 突出显示关键字数组中段落中所有出现的特定单词

javascript - 使用 JavaScript 来使用 WCF,但保持它对于所有客户端来说足够通用?

javascript - document.elementFromPoint(x,y);不工作

javascript - 从 ng-click 调用指令内的绑定(bind)函数