【问题标题】:Run/fire/trigger javascript on button click?单击按钮时运行/触发/触发javascript?
【发布时间】:2012-05-15 10:09:24
【问题描述】:

好吧,我不知道正确的词,所以我写了三个,希望你不会介意......

现在,我的问题。 我有像往常一样在页面加载上运行的javascript...脚本隐藏指定的ID并在点击时显示它们。让我们将此脚本称为“加载时隐藏”。

我的问题是,另一个 javascript,我们称之为“新闻”在页面加载时也在运行,我只能看到它 1 秒,直到另一个脚本隐藏 div id。

一旦我点击指定的 div 应该运行显示“新闻”,什么都没有发生。我可以看到“加载时隐藏”正在淡入淡出(fadein),但没有显示任何内容。

加载脚本时隐藏:

$(window).load(function(){
var activeElement;

function activateElement( eltSuffix ) {
    if( activeElement ) {
        activeElement.fadeOut( 500, function() {
            activeElement = $('#content-reveal-'+eltSuffix);
            activeElement.fadeIn( 500 );
        } );
    } else {
        activeElement = $('#content-reveal-'+eltSuffix);
        activeElement.fadeIn( 500 );
    }
}

$(document).ready( function() {
    $('#content div').hide();
    $('#info a').click( function() {
        activateElement('info');
    } );
    $('#search a').click( function() {
        activateElement('search');
    } );
    $('#music a').click( function() {
        activateElement('music');
    } );
    $('#socials a').click( function() {
        activateElement('socials');
    } );
} );
});

新闻脚本:

    $(document).ready(function () {
        $('#newsticker_1').newsticker({
            'style': 'fade',
            'showControls': false,
            'autoStart': true,
            'fadeOutSpeed': 'slow',
            'fadeInSpeed': 'slow',
            'transitionSpeed': '4000',
            'pauseOnHover': true
        });
})(jQuery);

谢谢!

【问题讨论】:

  • 请注意(function ($)$(document).ready(function () 做同样的事情....即您只需要其中一个! See the docs here
  • 你能给我们看看你剩下的js代码吗?
  • 当然,我猜...一秒 :) !添加了第二个脚本。

标签: javascript jquery onclick onload


【解决方案1】:

你可以在 div 上使用 onclick html 所以....

<div id="whatyouwanttoclickon" onclick="news()"></div>

但您必须将函数命名为 news。

function news(){
        $('#newsticker_1').newsticker({
            'style': 'fade',
            'showControls': false,
            'autoStart': true,
            'fadeOutSpeed': 'slow',
            'fadeInSpeed': 'slow',
            'transitionSpeed': '4000',
            'pauseOnHover': true
        });

或者你可以像这样使用 jquery....

$('#divyouwanttoclickon').click(function(){//putyourfunctioninhere});

【讨论】:

  • 好吧,我使用
猜你喜欢
  • 2017-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-05
  • 2011-12-30
  • 1970-01-01
相关资源
最近更新 更多