2017-03-01 1 views
-2

Es gibt eine Eingabeaufforderung in der unteren linken Ecke Wenn ich die Maus über das Tag, und können Sie mir sagen, wie dieses Phänomen zu verbieten. enter image description hereMaus über die <a> Tag

+1

Verwenden Sie eine Schaltfläche und klicken Sie auf Umleiten mit 'JS' – Rajesh

+0

Können Sie es weiter ausführen? danke o – Charles

+0

Die Eingabeaufforderung, über die Sie sprechen, ist eine Browserfunktion, mit der Benutzer die URL sehen können, die der Anker-Tag verknüpft. Um dies zu vermeiden, können Sie das Verhalten des Ankers mit einer Schaltfläche nachahmen. Sie finden * wie * einfach durch Suchen. – Rajesh

Antwort

0

Wie bereits erwähnt, ist das Verhalten, das Sie stoppen möchten, eine Browserfunktion.

Um dies zu vermeiden, werden Sie Anker Verhalten auf eigene Faust simulieren müssen, aber wie Sie sagten, Sie viele Anker haben und Sie können sie auf Tasten nicht manuell konvertieren, Sie folgenden Code versuchen:

function maskAnchors() { 
 
    var els = document.querySelectorAll('a[href]'); 
 
    console.log("Anchors Found: ", els.length) 
 
    for (var i = 0; i < els.length; i++) { 
 
    els[i].setAttribute("data-url", els[i].getAttribute('href')); 
 
    els[i].removeAttribute("href"); 
 
    els[i].addEventListener("click", handleClick) 
 
    } 
 
} 
 

 
function handleClick() { 
 
    var url = this.getAttribute('data-url'); 
 
    window.open(url) 
 
} 
 

 
document.getElementById('btnAdd').addEventListener("click", function() { 
 
    var container = document.querySelector('.content'); 
 
    var link = document.createElement('a') 
 
    link.href = "www.google.com"; 
 
    link.textContent = "This is a newly added link"; 
 
    container.append(link) 
 
}) 
 

 
document.getElementById('btnMask').addEventListener("click", maskAnchors) 
 

 
window.addEventListener('load', maskAnchors)
.maskedAnchor { 
 
    color: -webkit-link; 
 
    text-decoration: underline; 
 
    cursor: auto; 
 
}
<div class="content"> 
 
    <a href="google.com">Google</a> 
 
    <a href="Facebook.com">Facebook</a> 
 
    <a href="StackOverflow.com">StackOverflow</a> 
 
    <a href="YouTube.com">YouTube</a> 
 
    <a href="Example.com">Example</a> 
 
    <a>blabla</a> 
 
</div> 
 
<button id="btnAdd">Add Anchor</button> 
 
<button id="btnMask">Run masking</button>

Hinweis:

  • Entfernen href wird das Styling ändern. Sie müssen das auch manuell tun.
  • Diese Option behandelt keine Anker, die nach Ausführung dieser Funktion dynamisch hinzugefügt wurden. Sie müssen diese Funktion erneut aufrufen. Ich habe Funktion optimiert, um nur Anker zu holen, das hat href

Hoffe, es hilft!

+0

oh mein Gott! Ich muss sagen, dass Ihre Methode mich eine Menge Inspiration finden lässt, aber es ist ein bisschen nicht die Realität meiner Produktanforderungen ... Aber ich danke Ihnen wirklich sehr, danke, mein Freund, können Sie ein Freund sein ? Ich komme aus China, hast du ein Weechat oder qq? Sie können mich auch mailen: [email protected] oder [email protected] – Charles

+0

Ich bin froh, dass ich Ihnen in irgendeiner Weise helfen konnte. :-) – Rajesh

Verwandte Themen