Make a link open on double click

后端 未结 5 1665
佛祖请我去吃肉
佛祖请我去吃肉 2020-12-03 06:12

How to make hyper link Link a double click link: i:e link should open on double click and single click should do nothing.

5条回答
  •  执念已碎
    2020-12-03 06:56

    Okay, so, you can do this:

    HTML:

    Go Somewhere
    

    JavaScript using jQuery:

    jQuery(function($) {
        $('#golink').click(function() {
            return false;
        }).dblclick(function() {
            window.location = this.href;
            return false;
        });
    });
    

    Live copy

    (It doesn't have to be an ID; you can do this with a class or anything else that lets you form a selector that jQuery can process to hook things up.)

    If the user has JavaScript disabled, the link will work normally. Crawlers will find the link normally, etc. If a user has JavaScript enabled, the event handlers will get hooked up and it will require a double click.

    The above blows away keyboard navigation, though, so then you have to handle that:

    jQuery(function($) {
        $('#golink').click(function() {
            return false;
        }).dblclick(function() {
            window.location = this.href;
            return false;
        }).keydown(function(event) {
            switch (event.which) {
                case 13: // Enter
                case 32: // Space
                    window.location = this.href;
                    return false;
            }
        });
    });​
    

    Live copy

    I can't imagine this is good for accessibility, and I bet there are other things not catered for above. Which all feeds into:

    But I'd strongly recommend against doing it without a really good use case.

提交回复
热议问题