First of all, it has nothing to do with not using $(this)
With $(this) , jQuery works on this, a dom reference, while in $(“#dropmenu”) jQuery works on the dom element which id is “dropmenu”.
To make it more clear
$("#somenode").hover( function() {
// within this function, calling $(this).doSomething() is syntactically equal to calling $("#somenode").doSomething(), i.e., has the same effect
// So:
$(this).doSomething();
// has **exactly the same effect** as
$("#somenode").doSomething();
});
To return your problem, all I can see is the height problem (mouse out and mouse over really fast and the height is incorrect). To fix this use:
That’s probably because #nav-container has position relative, and as such it is not part of the “normal flow” of the webpage.
As a result, it has no height, and IE can not determine when a user hovers that element, because it doesn’t know where that element is.