javascript/jQuery 関数パターンの理解を深めようとしています。明らかなモジュール パターンを機能させるために、この単純なデモを試してみました。
これが機能しない理由を理解するのを手伝ってくれる人はいますか? 実際には、CSS を使用するだけで解決できることと、それを解決する簡単な方法があることを知っています。私が興味を持っているのは、試みた解決策がうまくいかない理由です。
HTML
<body>
<p>Here is a test input element</p>
<form>
<label>Some label</label>
<input type="text">
<button>Click me</button>
</form>
</body>
</html>
jQuery:
$(document).ready(function(){
var roll = (function(){
function rollEnter(){
$("button", this).css("text-decoration", "underline");
}
function rollExit(){
$("button", this).css("text-decoration", "none");
}
return{
underlined: rollEnter,
standard: rollExit
};
})();
//When I try and call the functions, it doesn't work
$("button").on('mouseenter', roll.underlined());
$("button").on('mouseleave', roll.standard());
});
何がうまくいかなかったのか、このタイプのパターンを機能させる方法について何かアドバイスはありますか?