フォームコードに問題があります。jQueryブラーの問題
ここではcodepenである:http://codepen.io/Dzongkha/pen/NbdadP
問題は、コードのこの部分である:
jQuery('.form-container input, .form-container textarea').each(function() {
var labelLeft, labelTop;
labelTop = jQuery(this).css('padding-top');
labelLeft = jQuery(this).css('padding-left');
jQuery(this).next('label').css({
'top': labelTop,
'left': labelLeft,
});
jQuery(this).on('focus', function() {
jQuery(this).next('label').attr({
'style': '',
});
var leftProperty, topProperty,inputWidth;
leftProperty = jQuery(this).next('label').css('left');
inputWidth = jQuery(this).css('width');
topProperty = jQuery(this).next('label').css('top');
if(leftProperty == inputWidth) {
jQuery(this).next('label').css({
'left': labelLeft,
});
};
if(topProperty == '0px') {
jQuery(this).next('label').css({
'top': labelTop,
});
};
});
jQuery(this).on('blur', function() {
if(!jQuery(this).hasClass('active')) {
jQuery(this).next('label').css({
'top': labelTop,
'left': labelLeft,
});
}
});
});
だから私は集中し、ちょうどcodepenページにぼかした場合 - すべてがOKであり、そのようになっています。 proper variant。
しかし、新しいタブや別のプログラムを開いたり、コンソールで入力したり、入力やテキストエリアに集中しようとすると、ぼんやりと表示されるような問題があります。issue variantです。
私がなぜ、わからないが、この場合には、このコードの一部:
jQuery(this).next('label').attr({
'style': '',
});
は、何らかの理由で動作しません。
私はすでに試した何:
1)
jQuery(this).next('label').css({
'top': '',
'left': ''
});
2)
jQuery(this).next('label').removeAttr('style');
しかし、どちらの場合も、その問題がありました。
私の問題=を解決する方法があることを願っています(
は事前にありがとうございます!
は、私が試したあなたのhtml – karthick
チェック 'ラベル'タグを見つけてみてください、それはすべての – prasanth
@karthickで(「ラベル」)の代わりに、次の(「ラベル」) –