У меня есть фрагмент кода, чтобы рассчитать ширину некоторых дочерних элементов и вместо объявления parentWidth и других переменных в функции EVERY. Я пытаюсь создать глобальные переменные, -использованный .. но, его не работает.jQuery Глобальные переменные недоступны по функциям
Вот часть моего кода:
$(document).ready(function(){
parentWidth = $(this).parent().width(); // parent width in pixels
margin = parentWidth/100; // pixel equivalent of a 1% margin
border = 6; // 6px total border for each input field
$(".element.twoinone input").each(function() {
$(this).css('width',
(((parentWidth - (margin * 2)) - (border * 2))/2)
+ 'px');
});
});
parentWidth, маржинальные и пограничные переменные не доступны в «» каждой функции (которая у меня есть кратное). Я пробовал использовать live(), livequery(), .. и т. Д., Но без кубиков. Я знаю его, вероятно, что-то простое, что этот noob не замечает .. так что любая помощь очень ценится !! Спасибо! Кроме того, если у вас есть какой-либо вход на вычисление ширины в процентах основаны на родительские контейнерах ширина и учет для каждых элементы границы, краев и QTY, .. я все уши: D
UPDATE не это : $ (документ) .ready (функция() {
parentWidth = $(this).parent().width();
$(".element.twoinone input").each(function() {
$(this).css('width',
(((parentWidth - (margin * 2)) - (border * 2))/2)
+ 'px');
});
});
То же самое, как это:
$ (документ) .ready (функция() {
$(".element.twoinone input").each(function() {
$(this).css('width',
((( $(this).parent().width() - (margin * 2)) - (border * 2))/2)
+ 'px');
});
});
Что вы * ожидающих * 'this' быть при расчете родительской ширины? –
Я ожидаю, что это «элемент», который я использую переменную IN .. поэтому при использовании parentWidth внутри $ («. Element.twoinone input») я хочу «this» == $ (". Element. twoinone input ") – revive
Это не так: parentWidth = $ (this) .parent(). width(); $ (". Element.twoinone input"). Each (function() { $ (this) .css ('width', (((parentWidth - (margin * 2)) - (border * 2))/2) + 'px'); }); так же, как это:. $ ("element.twoinone вход") каждый (функция() { $ (это) .css ('ширина', ((($ (это) .parent().width() - (margin * 2)) - (граница * 2))/2) + 'px'); }); – revive