Seglormeister / pr0gramm.com-by-Seglor

http://pr0gramm.com
26 stars 3 forks source link

Keine Issue - sondern ein Feature Request: Video mit Leertaste pausieren (Fertig programmiert) #16

Closed vortex852456 closed 6 years ago

vortex852456 commented 8 years ago

Unter dem Block für "// Bild mit Space vergrößern" folgender Block - damit wird ermöglicht, Videos mit Leertaste zu pausieren. Außerdem darüber "if ($('.item-image').length)" ersetzen durch "if ($('img.item-image').length)".

    // Video mit Space pausieren
    if ($('video.item-image').length) {
        event.preventDefault();
        event.stopPropagation();

        if (!spacepressed) {
            spacepressed = true;
            $(".item-image")[0].pause();
        }
        else {
            spacepressed = false;
            $(".item-image")[0].play();
        }
    }
vortex852456 commented 8 years ago

Warum einfach wenns auch kompliziert geht... hier einfach der komplette Event-Handler:

    var clickevent;
    function keydown(event) {
        if (event.keyCode == '32') {

    // falls textarea aktiv
    var el = document.activeElement;
    if (el && (el.tagName.toLowerCase() == 'input' && el.type == 'text' || el.tagName.toLowerCase() == 'textarea')) {
        return;
    }

    // Bild mit Space vergrößern
    if ($('img.item-image').length) {
        event.preventDefault();
        event.stopPropagation();

        if (!spacepressed) {
            $(".item-image").css({ 'max-height': '100%', 'cursor': 'move', 'position': 'relative'});
            if ($('.item-fullsize-link').length) {
                var full = $('.item-fullsize-link').attr('href');
                $('.item-fullsize-link').attr('href', $('.item-image').attr('src'));
                $('.item-image').attr('src', full);
            }
            spacepressed = true;
            var events = $._data($('.item-image')[0], 'events');
            clickevent = events.click[0].handler;
            $(".item-image").mousedown(function(e){
                $(".item-image").unbind("click");
                startDrag(e);
            });
            $(".item-image").mouseup(function(e){
                stopDrag(e);
            });
        }else{
            $(".item-image").unbind("mousedown");
            $(".item-image").bind("click", clickevent);
            $(".item-image").css({ 'left': '0px', 'top': '0px', 'max-height': 'calc(100vh - 200px)', 'cursor': 'pointer'});
            var full = $('.item-fullsize-link').attr('href');
            $('.item-fullsize-link').attr('href', $('.item-image').attr('src'));
            $('.item-image').attr('src', full);

            spacepressed = false;
        }
    }

    // Video mit Space pausieren
    if ($('video.item-image').length) {
        event.preventDefault();
        event.stopPropagation();

        if (!spacepressed) {
            spacepressed = true;
            $(".item-image")[0].pause();
        }
        else {
            spacepressed = false;
            $(".item-image")[0].play();
        }
    }
}
}
Bomberus commented 8 years ago

Forke dir mal das Projekt und erstelle einen Pull-Request, anstatt ein neues Issue aufzumachen.

vortex852456 commented 8 years ago

Wusste nicht, dass das geht. Danke für den Hinweis.