div ヘッダーを切り捨てようとしています。私の関数は、可変スコープのためにバグがあります。
ここに私の機能が分解されています:
- 変数が適切にスコープされるように変数を設定する
- 各 div をループします。
- 長いタイトルを保存
- 切り捨てられたタイトルを作成する
- 切り捨てられたタイトルを設定
- マウス入力時にフル タイトルを使用
- マウスを離すと、切り捨てられたタイトルを使用します
変数が正しく渡されるように、この関数を再配置するにはどうすればよいですか?
jQuery(document).ready(function($) {
eventHover();
});
function eventHover(){
// Set var scope
var title = '';
var shortText = '';
var longText = '';
// Change long titles to short version
$('#event_promo .panel').each( function() {
title = $(this).find($('h3 a'));
longText = title.html();
shortText = jQuery.trim(longText).substring(0, 50)
.split(" ").slice(0, -1).join(" ") + "...";
title.html(shortText);
});
// Add hover class and change title to long version
$('#event_promo .panel .trigger').mouseenter(function () {
$(this).parent().addClass('hover');
title.html(longText);
});
// Remove hover class and revert title to short version
$('#event_promo .panel .trigger').mouseleave(function () {
$(this).parent().removeClass('hover');
title.html(shortText);
});
}