Hi, i’m working on a simple responsive page with superfish implemented in navigation, i want to disable the plugin when the window is resized to 768px and below because the navigation will be replaced by a toggle nav, so i’m trying to remove the .sf-menu class with jQuery but it doesn’t work.
Here’s my code:
function checkWidth(init)
{
if ($(window).width() < 768) {
$('ul').removeClass('.sf-menu');
}
else {
if (init == false) {
$('ul').addClass('.sf-menu');
}
}
}
$(document).ready(function() {
checkWidth(true);
$(window).resize(function() {
checkWidth(false);
});
});
Any help would be appreciated.
It`s hard to help you if i not see the html
Try with $('body').innerWidth();
- Microlancer Beta Tester
- Has been a member for 2-3 years
- Author was Featured
- Item was Featured
- Sold between 100 000 and 250 000 dollars
- Referred between 100 and 199 users
- Bought between 10 and 49 items
- Exclusive Author
$('body').resize(function () {
var width = $(this).width();
if (width < 769) {
//do stuff
}
else { // do stuff }
}).resize();
- Microlancer Beta Tester
- Author had a Free File of the Month
- Has been a member for 3-4 years
- Item was Featured
- Author was Featured
- Austria
- Exclusive Author
- Referred between 200 and 499 users
always listen to the window object when resizing:
$(window).resize(function(){
//do stuff here
});
- Exclusive Author
- Has been a member for 2-3 years
- Sold between 50 000 and 100 000 dollars
- Bought between 1 and 9 items
- Referred between 50 and 99 users
Try this:
function your_function_name(){
var windowWidth = jQuery(window).width();
if(windowWidth <= 768) {
jQuery('ul').removeClass('.sf-menu');
}else{
jQuery('ul').addClass('.sf-menu');
}
}
jQuery(document).ready(function($){
your_function_name();
jQuery(window).bind("resize",function(){
your_function_name();
});
}
revaxarts said
always listen to the window object when resizing:$(window).resize(function(){ //do stuff here });
+1 what I was going to say 
