为什么我的按钮不做任何点击时

Why are my buttons not doing anything when clicked on?

本文关键字:任何点 我的 按钮 为什么      更新时间:2023-09-26

我目前正试图建立一个网站,有三个按钮,一个Facebook共享一个,一个Twitter,和另一个链接到视频。它们被分为"facebook"、"twitter"answers"play"。但是,没有一个链接到我在javascript文件中编写的链接。以下是我的Javascript文件,以防出现问题:

$(function() {
var clicks = 0;
$('button').on('click', function() {
    clicks++;
    var percent = Math.min(Math.round(clicks / 3 * 100), 100);
    $('.percent').width(percent + '%');
    $('.number').text(percent + '%');
});

$('.facebook').on('click', function() {
    window.open('http://www.facebook.com');
    var w = 580, h = 300,
            left = (screen.width/2)-(w/2),
            top = (screen.height/2)-(h/2);

        if ((screen.width < 480) || (screen.height < 480)) {
            window.open ('http://www.facebook.com/share.php?u=http://bit.ly/somawater', '', 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);
        } else {
            window.open ('http://www.facebook.com/share.php?u=http://bit.ly/somawater', '', 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);   
        }
});
$('.twitter').on('click', function() {
    var loc = encodeURIComponent('http://bit.ly/somawater'),
            title = "Beautifully innovative all-natural water filters by Soma — ",
            w = 580, h = 300,
            left = (screen.width/2)-(w/2),
            top = (screen.height/2)-(h/2);
        window.open('http://twitter.com/share?text=' + title + '&url=' + loc, '', 'height=' + h + ', width=' + w + ', top='+top +', left='+ left +', toolbar=0, location=0, menubar=0, directories=0, scrollbars=0');
});
$('.play').on('click', function() {
    window.location.href = "http://kck.st/TH0NAN";
});
});

在我的HTML文件中,我通过

调用这个Javascript文件
<script src="/share/share.js"></script>.

Share.js是javascript的名称。有人能指出问题出在哪里吗?

当dom准备好时,请检查您添加事件的html元素是否在页面上,因为您已经在dom准备好上应用了代码。你可能会通过其他一些源,如ajax或其他可能发生在dom就绪后的东西来设置html。

尝试在窗口加载时添加事件:

$(window).on('load',function(){
//Your code to be put here
});

如果事件处理程序在按钮呈现之前运行,则按钮不能绑定该处理程序。

试着把你的JS代码放在HTML代码之后,我想它会像你想的那样运行。

更新:

试着使用:

$('html').on( "click", '.facebook', function() {
  // Do what you want
});