Problemas com Selecionar codigo

2 participantes

Ir para baixo

Tópico resolvido Problemas com Selecionar codigo

Mensagem por Starset 21.05.17 14:48

Detalhes da questão


Endereço do fórum: http://neworleansoriginals.forumeiros.com/
Versão do fórum: phpBB3

Descrição


É o seguinte, percebi que da última segunda-feira para cá, eu não consigo mais utilizar a função do JS abaixo, que me permitia selecionar todo o código entre [*code][*/code], eu fiz o teste em vários navegadores e meus usuários também me informam o problema.

Código:
function selectCode(a){a=a.parentNode.tagName==="B"?$(a).closest("table").find(".cont_code")[0]:$(a).closest("dl").find("code")[0];if(window.getSelection){var c=window.getSelection();if(c.setBaseAndExtent)c.setBaseAndExtent(a,0,a,a.innerText.length-1);else{window.opera&&a.innerHTML.substring(a.innerHTML.length-4)=="<BR>"&&(a.innerHTML+=" ");var b=document.createRange();b.selectNodeContents(a);c.removeAllRanges();c.addRange(b)}}else document.getSelection?(c=document.getSelection(),b=document.createRange(),b.selectNodeContents(a),
        c.removeAllRanges(),c.addRange(b)):document.selection&&(b=document.body.createTextRange(),b.moveToElementText(a),b.select())}
       
        $(function(){
            $("dl.codebox:not(.spoiler,.hidecode) dt").add($("div.cont_code").closest("table").find("span.genmed b")).append('<span onClick="selectCode(this)" class="selectCode">Selecionar o Code</span>');
        });

O JS está com investimento em todas as páginas e já adianto que ninguém mexeu no código, uma vez que sou o único com acesso ao painel.

Alguém teria como me ajudar com essa situação?
Starset
Starset
****

Membro desde : 02/03/2017
Mensagens : 265
Pontos : 378

http://neworleansoriginals.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Problemas com Selecionar codigo

Mensagem por Luiz 21.05.17 15:33

Olá,

Troque o Javascript por:
Código:
    function selectCode(e) {
        var doc = document
            , text = $(e).closest("dl").find(".cont_code,code").get(0)
            , range, selection
        ;
        if (doc.body.createTextRange) {
            range = document.body.createTextRange();
            range.moveToElementText(text);
            range.select();
        } else if (window.getSelection) {
            selection = window.getSelection();       
            range = document.createRange();
            range.selectNodeContents(text);
            selection.removeAllRanges();
            selection.addRange(range);
        }
    };
    $(function(){$("dl.codebox:not(.spoiler,.hidecode)  > dd.code, dl.codebox:not(.spoiler,.hidecode)  > dd > code").closest("dl").find('dt').append('<span onClick="selectCode(this)" class="selectCode">Select Content</span>')});

E adicione ao final de sua CSS:
Código:
.selectCode { float:right; text-transform: uppercase; cursor:pointer; }
div.cont_code { clear: right; }

Localização da Folha CSS no ACP:
Visualização -> Cores -> Folha de Estilo CSS.

o/
Luiz
Luiz
Membro Entusiasta

Membro desde : 23/04/2016
Mensagens : 6645
Pontos : 7451

https://luizfelipe.dev

Ir para o topo Ir para baixo

Tópico resolvido Re: Problemas com Selecionar codigo

Mensagem por Starset 21.05.17 15:36

Funcionou! Valeu.
Starset
Starset
****

Membro desde : 02/03/2017
Mensagens : 265
Pontos : 378

http://neworleansoriginals.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Problemas com Selecionar codigo

Mensagem por Luiz 21.05.17 19:06

De nada! Piscada
Questão marcada como Resolvida ou o Autor solicitou que ela fosse arquivada.
Tópico marcado como Resolvido e movido para Questões resolvidas.
Luiz
Luiz
Membro Entusiasta

Membro desde : 23/04/2016
Mensagens : 6645
Pontos : 7451

https://luizfelipe.dev

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos