2016-05-12 13 views
1

私はWeb開発の初心者ですので、Shawn Wildermuthの "ASP.NET Core RC1、MVC 6、EF7 & AngularJSを使用したWebアプリケーションの構築"というPluralsightコースを受講しています。彼のjQueryのモジュールでは、ショーンは彼のために完璧に動作するコードのこの部分があります:私は、ID =「メイン」私のindex.htmlページ上でのdivを持ってマウスイベントの問題点

 var main = $("#main"); 
    main.on("mouseenter", function() { 
     main.style = "background-color: #888;"; 
    }); 
    main.on("mouseleave", function() { 
     main.style = ""; 
    }); 

を、JSファイルは、他のjQueryの機能で参照されています同じファイルが動作していて、私はこのコードを動作させることができません。私はそれが重要ではないことを知っていますが、現時点では個人的です。どんな提案も役に立ちます。ありがとうございました!

答えて

2

このようにスタイルプロパティにアクセスすることはできません。次のことを試してみてください。

var main = $("#main"); 

main.mouseenter(function() { 
    main.css("background-color", "#888"); 
}); 
main.mouseleave(function() { 
    main.css("background-color", "none"); 
}); 
+0

を。再試行する。それは最初に働いたはずですが。 – webbul

+0

それは働いた!ありがとう。 –

3

styleはネイティブDOM要素のプロパティであり、mainはjQueryオブジェクトです。希望の結果を得るには、.css().removeAttr() jQueryメソッドを使用できます。

var main = $("#main"); 
main.on("mouseenter", function() { 
    main.css("background-color": "#888"); 
}); 
main.on("mouseleave", function() { 
    main.removeAttr('style'); 
}); 
1

このお試しください:私はそれを編集した

var main = document.getElementById("main"); 

    main.onmouseenter=function(){ 
     main.setAttribute('style', 'background-color:#888;'); 
    }; 
    main.onmouseleave=function(){ 
     main.removeAttribute("style") 
    };