Вход

Просмотр полной версии : вопрос по $.extand


prison47
05.02.2013, 03:33
Помогите пожалуйста советом. Дилема состоит вот в чем :
Есть плагин, в нем настройки доступные в любом месте самого плагина.

var setting = $.extend({

popUpRunTop : 'top',

}, options);

Реально ли значение popUpRunTop перенести в имя стиля ? top или left не столь важно:

.css({top: 200, left: 100});

danik.js
05.02.2013, 06:49
че?

DjDiablo
05.02.2013, 10:36
:D
Я тоже ничего не понял :)
ты хочешь чтобы popUpRunTop был через .css доступен что ли, как будто это стиль ?

prison47
05.02.2013, 21:45
Да видимо я неправильно написал. Значит смотрите в extand у меня лежит значение например top. Я задаю какому нибудь объекту .css({left: 100});
И я пытаюсь объявить в свойстве css вместо имени стиля left .css({setting.popUpRunTop : 100});
То есть получается я пытаюсь вместо имени стиля вставить как бы переменную, содержащею например top или left неважно. Чтобы имя стиля менялось в зависимости от того что будет записано в popUpRunTop

DjDiablo
05.02.2013, 23:00
ахах :)

ну как минимум можно так
name="left";

var param={};
param[name]=200;

alert (param.left);
//css(param);

prison47
06.02.2013, 03:39
Спасибо и еще вопрос, как проверить скрипт на быстродействие?

danik.js
06.02.2013, 03:58
Ну как-то так:

function heavyFunc () {
for (var i = 0; i < 100000000; i ++) {}
}

var tstart = new Date();

// вызываем медленную функцию
heavyFunc();

//console.log(new Date() - tstart);
alert(new Date() - tstart + 'ms');

prison47
06.02.2013, 04:26
Спасибо большое, только вот непойму как туда оформить функцию из плагина. Вообщем у меня плагин с функцией вызова определенных действий при наведении мыши. Вот собственно его быстродействие и хотелось бы проверить

danik.js
06.02.2013, 05:10
Ну ведь схема проста: сохраняем текущее время в tstart, делаем свои дела, которые нужно замерить по времени, потом выводим разницу между текущим временем и tstart

prison47
06.02.2013, 05:32
Объясните пожалуйста неучу :) Вот например кусок кода из плагина, скорость выполнения которого нужно замерить:
$this.on('mouseenter', function(){
// действия
})
что куда пихать?
При этом этот код еще в конструкции if(если это важно)

danik.js
06.02.2013, 06:38
$this.on('mouseenter', function(){
var tstart = new Date();
// действия
console.log(new Date() - tstart);
})

prison47
06.02.2013, 07:01
Теперь понятно, спасибо большое :)