so I have this jQuery script below that works. But since I'm just learning jQuery, I'd like to take advantage of this working code and make it more terse.

所以我在下面有这个jQuery脚本。但是因为我刚刚学习jQuery,所以我想利用这个工作代码并使其更简洁。

Basically it removes a class which holds a background image, then makes a div visible which is a link to an area of the site. It seems overly repetitive to me. Thanks for the helppp.

基本上它删除了一个包含背景图像的类,然后使div可见,这是指向站点区域的链接。这对我来说似乎过于重复。谢谢你的帮助。

THE CODE:

代码:

$(document).ready(function(){
    $('#res').live('mouseover',function(){
        $(this).removeClass('resume');
        $('#reslin').css('visibility','visible');   
    });

    $('#res').live('mouseout',function(){
        $(this).addClass('resume');
        $('#reslin').css('visibility','hidden');;   
    });

    $('#pro').live('mouseover',function(){
        $(this).removeClass('projects');
        $('#prolin').css('visibility','visible');
    });

    $('#pro').live('mouseout',function(){
        $(this).addClass('projects');
        $('#prolin').css('visibility','hidden');
    });

    $('#abo').live('mouseover',function(){
        $(this).removeClass('about');
        $('#abolin').css('visibility','visible');
    });

    $('#abo').live('mouseout',function(){
        $(this).addClass('about');
        $('#abolin').css('visibility','hidden');
    });

    $('#con').live('mouseover',function(){
        $(this).removeClass('contact');
        $('#conlin').css('visibility','visible');

    });

    $('#con').live('mouseout',function(){
        $(this).addClass('contact');
        $('#conlin').css('visibility','hidden');
    });
});

5 个解决方案

#1


8

tshauck, here is a efficient solution for your problem without changing any of your existing HTML.

tshauck,这是一个有效的解决方案,无需更改任何现有的HTML。

jQuery(document).function($) {

    var myClasses = {
        pro: 'projects',
        res: 'resume',
        abo: 'about',
        con: 'contact'
    }

    $('#res, #pro, #abo, #con').live('mouseenter', function() {
        $('#' + $(this).attr('id') + 'lin')
            .addClass(myClasses[$(this).attr('id')])
            .css('visibility', 'visible');

    }).live('mouseleave', function() {
        $('#' + $(this).attr('id') + 'lin')
            .addClass(myClasses[$(this).attr('id')])
            .css('visibility', 'hidden');
    });

});

Good luck.

祝你好运。

更多相关文章

  1. JQuery的一些基本功能代码(CH1&2)
  2. 如何在angularjs代码中单元测试jquery元素
  3. [置顶] JQuery datatables 使用Fixedcolumns固定列控件
  4. jquery常用代码片段
  5. Webhoster插入了一个javascript,它会阻止我的代码如何删除它?
  6. 可以直接拿来用的15个jQuery代码片段
  7. 为什么使用observe_field代码不能使用JQuery模型对话框?
  8. jQuery Ui Draggable在移动端浏览器不起作用解决方案
  9. jquery 生成table表格 部分代码

随机推荐

  1. 对JavaScript优化及规范的一些感想
  2. 键盘出现时,UIWebView滚动。导致点击偏移
  3. 我如何捕获并插入Meteor.Error警报从Mete
  4. JavaScript 实现GridView汇总
  5. 如何使用try,catch在错误处理中打印消息
  6. javascript之DOM技术(二)
  7. 有没有办法在javascript控制台中将上下文
  8. 如何使用Require JS配置具有第三方js依赖
  9. JavaScript——数组(三)数组方法汇总
  10. 切换元素类并使用旧类在视图中添加新元素