OnClick без jQuery

Установите бинарный пакет (от имени root)

# pkg install mysql80-client

См. 4.4.3. Установка и удаление пакетов .

47
задан Roman Pokrovskij 15 October 2018 в 15:24
поделиться

9 ответов

Когда эта привязка будет содержать только одну функцию для обработки при щелчке, вы можете просто написать

document.getElementById('anchorID').onclick=function(){/* some code */}

, в противном случае вы должны использовать метод DOM addEventListener

function clickHandler(){ /* some code */ }
var anchor = document.getElementById('anchorID');
if(anchor.addEventListener) // DOM method
  anchor.addEventListener('click', clickHandler, false);
else if(anchor.attachEvent) // this is for IE, because it doesn't support addEventListener
   anchor.attachEvent('onclick', function(){ return clickHandler.apply(anchor, [window.event]}); // this strange part for making the keyword 'this' indicate the clicked anchor

, также не забудьте вызвать приведенный выше код когда все элементы загружены (например, в window.onload)

- редактировать

Я вижу, вы добавили некоторые детали. Если вы хотите заменить код ниже

$("a.scroll-up, a.scroll-down").click(function(){SNavigate($(this).attr("href").substr(7));return false;});

на sth, который не использует jQuery, это должно сработать

function addEvent(obj, type, fn) {
        if (obj.addEventListener)
                obj.addEventListener(type, fn, false);
        else if (obj.attachEvent)
                obj.attachEvent('on' + type, function() { return fn.apply(obj, [window.event]);});
}
addEvent(window, 'load', function(){
   for(var i=0, a=document.anchors, l=a.length; i<l;++i){
      if(a[i].className == 'scroll-up' || a[i].className == 'scroll-down'){
         addEvent(a[i], 'click', function(e){ SNavigate(this.href.substr(7)); e.returnValue=false; if(e.preventDefault)e.preventDefault();return false});
      }
   }
});
61
ответ дан 26 November 2019 в 19:41
поделиться

W3C предлагает:

element.addEventListener('click',doSomething,false)

Microsoft использует:

element.attachEvent('onclick',doSomething)

Вы можете выполнить обнаружение некоторых функций и определить, какой вызов использовать.

Из http: //www.quirksmode.org/js/events_advanced.html.

5
ответ дан 26 November 2019 в 19:41
поделиться

как насчет этого:

document.getElementById("lady").onclick = function () {alert('onclick');};
13
ответ дан 26 November 2019 в 19:41
поделиться
<script>
 function tramtramtram(){
     alert("tram it!");
 }
</script>


<a href="#" onclick="tramtramtram()">tramtram</a>
1
ответ дан 26 November 2019 в 19:41
поделиться

Без дополнительного кода в html, вот способ сделайте это:

<html><body><head><script>  // This script could be in an external JS file
function my_handler(elt) {
    alert("Yay!");
    return false;
}

function setup() {
    document.getElementById('lady').onclick = my_handler;
}

window.onload = setup;
</script></head>
<body><a href='#' id='lady'>Test</a></body>
</html>
2
ответ дан 26 November 2019 в 19:41
поделиться

var el = document.getElementById ('lady'); el.addEventListener ("щелчок", трамвай, ложь);

1
ответ дан 26 November 2019 в 19:41
поделиться

Выполнять этот сценарий при загрузке документа (заменяя предупреждение вашим материалом):

var rgLinks = document.getElementsByTagName("A");

for (var x=0; x<rgLinks.length; x++) {
    el = rgLinks[x];

    if (el.className == 'scroll-down' || el.className == 'scroll-down')
        {
        el.onclick = function () {alert('onclick');};
        }
    }

Может быть, это то, о чем вы спрашиваете ...

1
ответ дан 26 November 2019 в 19:41
поделиться

Просто используйте атрибут onclick .

<a href="#" onclick="functionName(someParam)">

Или сделать это из javascript,

document.getElementById("anchorID").onclick = function(){
   some code
};
0
ответ дан 26 November 2019 в 19:41
поделиться

Вам нужно использовать getElementById, чтобы добавить обработчик onclick. Однако вам нужно где-то инициировать свой код. Без jQuery вы можете использовать только обработчик загрузки тела:

<body onload="myinitfunction()">

myinitfunction может находиться во внешнем файле js.

0
ответ дан 26 November 2019 в 19:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: