Jestem całkowicie początkującym w JS.
Aktualnie na własne potrzeby przerabiam pewien kod.
Chciałbym, aby po najechaniu myszką na element "mainBox" przezroczystość całego elementy zmniejszała się, załóżmy.. o połowę.
Dobrze by było, gdyby zmniejszało się płynnie.
Następnie po wzięciu kursora z elementu jego przezroczystość przywracała się do normy.
To jest kod w którym (wydaje mi się) tworzony jest div.. znajduje się w nim css.
var mainBox = $(document.createElement('div')).addClass('mainBox').css({'top':'10px'
, 'left':'10px', 'height':'20px', 'width':'132px', 'background':'url(http://hlmods.cba.pl/other/dropfilter.png)', 'padding':'9px 8px 12px 138px', 'border':'0px'});To jest cały skrypt:
;/* Automatyczne zbieranie lootu + filtr by Doceluf
Zbiera automatycznie loot po walce, filtruje loot wg podanych ustawień. Automatycznie zamyka okienko lootu.
*/
function LootFilter(){
var __this = this;
var mainBox = $(document.createElement('div')).addClass('mainBox').css({'top':'10px'
, 'left':'10px', 'height':'20px', 'width':'132px', 'background':'url(http://hlmods.cba.pl/other/dropfilter.png)', 'padding':'9px 8px 12px 138px', 'border':'0px'});
var filterInput = $(document.createElement('input')).css({'margin-right':'51px', 'text-shadow':'-1px -1px 0px black, -1px 0px 0px black, -1px 1px 0px black, 0px -1px 0px black, 0px 0px 0px black, 0px 1px 0px black, 1px -1px 0px black, 1px 0px 0px black, 1px 1px 0px black, 0px 0px 6px #CCC', 'background':'url(http://hlmods.cba.pl/images/hlmodsimages/transparent.png)','
padding':'3px','width':'50px','color':'white', 'border':'0px'}).change(function(){__this.saveSettings()});
var autoQuitCheckbox = $(document.createElement('input')).attr('type', 'checkbox').attr('id', 'LFME_autoQuitCheckbox').change(function(){__this.saveSettings()});
mainBox.append(filterInput);
mainBox.append(autoQuitCheckbox);
$('#centerbox').append(mainBox);
var tmpLootItem = lootItem;
var doubleSendBlock = false;
this.saveSettings = function(){
var settings = '|value:'+filterInput.val()+'|autoQuit:'+(autoQuitCheckbox.attr('checked') ? 1 : 0);
var d=new Date();d.setTime(d.getTime()+3600000*24*30)
setCookie('__LootFilterME', settings, d, false, false, false);
}
this.readSettings = function(){
var settings = getCookie('__LootFilterME')
if (settings){
settings = settings.split('|');
for (i = 0; i < settings.length; i++){
var pair = settings[i].split(':');
switch(pair[0]){
case 'top':
mainBox.css('top', pair[1]+'px');break;
case 'left':
mainBox.css('left', pair[1]+'px');break;
case 'value':
filterInput.val(pair[1]); break;
case 'autoQuit':
if (parseInt(pair[1]) == 1) autoQuitCheckbox.attr('checked', 'checked'); break
}
}
}
}
this.readSettings();
lootItem = function(i){
tmpLootItem(i);
var limit = parseInt(filterInput.val());
if (isNaN(limit) || (i.pr >= limit) || (i.stat.search(/heroic|legendary|unique|gold/) >= 0)){
setLoots((g.loots.init > 1 ? 2 : 0), i.id.toString());
}else{
setLoots(1,i.id.toString());
}
if (!doubleSendBlock && autoQuitCheckbox.attr('checked')){
doubleSendBlock = true;
setTimeout(function(){sendLoots(1); doubleSendBlock = false}, 300);
}
}
}
g.loadQueue.push({fun:function(){new LootFilter()},data:''});Proszę o pomoc.
@Edit: Hmmm.. Równie dobrze można by ustawić znikanie CAŁEGO elementu pod odpowiedni klawisz.
@Edit2: Jeszcze coś mi do głowy wpadło... Zmiana położenia elementu do góry (nie pogardziłbym płynnym). O np. 60px :P
Użytkownik Mephis edytował ten post 05 luty 2012, 21:53

Logowanie »
Rejestracja
Pomoc
Dodaj odpowiedź
Cytuj