首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何像javascript一样调用jquery函数

如何像javascript一样调用jquery函数
EN

Stack Overflow用户
提问于 2012-12-24 17:28:55
回答 1查看 294关注 0票数 5

我有这个jQuery函数:

代码语言:javascript
复制
$('.scrollToLoginBox').click(function(){
    $('html, body').animate({scrollTop: $("#LoginBox").offset().top-5}, 'slow');                
});

我不希望它是一个类,我希望能够这样命名它:onClick="scrollTo(id);"

那么,如何将函数转换为javascript格式:

代码语言:javascript
复制
function scrollTo(id){
    $('html, body').animate({scrollTop: $("#'+id+'").offset().top-5}, 'slow');
}

出版商编辑:

我不讨厌你们;o)我很感谢你们的回答,但我不是想要拿到身份证。另一方面,我正在尝试构建与上面发布的函数相同的函数。所以,点击一下,我就会发送id (我有Ex。登录或LoginBox),以便函数将缓慢滚动到锚点(id=Login或LoginBox)。

现在我不得不这样叫它: class="scrollToLoginBox",我想叫它onClick="scrollTo('LoginBox');

我有20个与上面相同的函数,每个id一个。另一个我有但不想要的例子是: class="scrollToSettings",相反,我想称它为onClick="scrollTo('LoginBox');或onClick=“scrollTo(‘LoginBox’);

代码语言:javascript
复制
            $('.scrollToSettings').click(function(e){
        $('html, body').animate({scrollTop:$("#settings").offset().top-5}, 'slow');         
        return false;       
    });

    $('.scrollToFaqs').click(function(e){
        $('html, body').animate({scrollTop:$("#formCode").offset().top-5}, 'slow');         
        return false;       
    });

我只想要一个接受id的函数。我只是不知道如何将id传递给这个jQuery函数;o)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-24 17:29:51

如果想要将id传递给被单击的项,则需要使用this.id

代码语言:javascript
复制
onClick="scrollTo(this.id);"

如果你想传递some other control的id,那么只需将id作为字符串传递即可。

代码语言:javascript
复制
onClick="scrollTo('idOfHTMLElement');"

基于注释编辑,用于将值从html元素传递到javascript函数。

数据属性用于保存自定义属性,可以在jQuery函数中使用data()函数进行访问。

Html

代码语言:javascript
复制
<div class="scrollToCal" data-idtopass="Anchor">click me to go to Anchor</div>​

Javascript

代码语言:javascript
复制
jQuery(document).ready(function($) {

    $('.scrollToCal').click(function() {

        $('html, body').animate({
            scrollTop: $('#' + $(this).data('idtopass')).offset().top - 5
        }, 'slow');
        return false;
    });

});​
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14019494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档