2016-10-03 2 views
0

Ich versuche, den Körper Inhalt nach rechts zu schieben, jedoch aus irgendeinem Grund kann ich nicht scheinen, um meine Körpervariable überhaupt mit der onClick-Funktion zu arbeiten. Ich dachte, dass nur '(document.body)' mit on ('click', function()) funktionieren würde, aber das scheint nicht der Fall zu sein? Bitte beachten Sie den Code unten zusammen mit jsfiddle, vielen Dank im Voraus für Ihre Erkenntnisse!Ich kann nicht onClick Funktion zu arbeiten auf Körper

jsfiddle: https://jsfiddle.net/jhh7p8nj/4/

$(document).ready(function(){ 
var $toggle = $('#toggle'), 
    $body = $(document.body), 
    $sidebar = $('.sidebar'); 

$toggle.on('click', function(){ 
    $sidebar.toggleClass('sidebarShow'); 
    $body.addClass('pushRight') 
}); 
    }); 
+1

versuchen Sie mit $ (Körper) anstelle von document.body - document.body ist, was Sie ohne jQuery verwenden würden. – kgiff

+0

Deine Fiddle scheint zu funktionieren. – Goombah

+1

Verwende '$ ('body')' und benutze 'margin-left: 250px;' anstelle von 'left: 250px' im Body. EDIT: oder verwenden Sie, was @ MarekJanoud unten schlägt. –

Antwort

0

Du fügt die Klasse

.pushRight { 
    left: 250px; 
} 

Welche nichts tun wird. Wenn Sie es

.pushRight { 
position:relative;  
left: 250px; 
} 

ändern sollte, dass die Arbeit (oder zumindest tut es in jsFiddle)

Aber wie @ Gespenst-d sagte, wäre ein Wrapper viel besser als die gesamte body bewegen.

Verwandte Themen