Kmils21
3.05.2013, 15:49:29
mam to:
$(this).find('input').each(function(){
var offset = $(this).offset();
console.log(offset.left + offset.top);
}
efekt:
offset.left = 0
offset.top = 0
dlaczego nie pobiera mi pozycji?
Tajgeer
3.05.2013, 15:54:52
Na pewno chcesz wykonać .find() na rzecz $(this)?
Swoją drogą, to funkcja .each() nie jest poprawnie zamknięta.
Kmils21
3.05.2013, 15:57:49
Swoją drogą, to funkcja .each() nie jest poprawnie zamknięta.
Wiem - nie dałem całego kodu.
W linku podałeś inny kod niż mam ja. Tak na pewno .find() na rzecz $(this), bo to jest metoda, a ten $(this) to obiekt.
Tajgeer
3.05.2013, 16:05:29
W takim razie pokaż więcej kodu, bo nie wiadomo względem czego chcesz pobrać offset().
Kmils21
3.05.2013, 16:13:31
(function($){
$.fn.test = function(){
$(this).find('input').each(function(){
var offset= $(this).offset();
console.log(offset.left + ' ' + offset.top);
});
};
})(jQuery);
Tajgeer
3.05.2013, 16:15:06
A przykładowy sposób wywołania? Czy po prostu funkcję test() odpalasz w momencie ładowania strony i tyle?
Kmils21
3.05.2013, 16:17:08
Tajgeer
3.05.2013, 16:18:45
Skoro działa, tzn. że u Ciebie widocznie jest jakiś błąd. W konsoli nie ma żadnych wpisów? Nie ma żadnych konfliktów z innymi bibliotekami JS?
Kmils21
3.05.2013, 16:32:45
Właśnie nie ma żadnych błędów. Nie działa offset(), a Inne metody takie jak .css() czy fade() itp. już działają
Wywołuję funkcje na divie i wskazuje ona na zero, jednak kiedy nadam temu divowi id np,: "idediva" i wpisze w konsoli to
var x $("#idediva").offset; console.log(x.left); to już wskazuje wartość
Dobra zlamiłem. Element był "display:none" w momencie pobierania pozycji.
zegarek84
3.05.2013, 21:49:48
skoro rozszerzasz prototype jQ to po co przekazujesz this (który nie jest surowym elementem DOM tylko instancją obiektu jQ) do konstruktora jQ?
$(this).find...

dopiero w metodzie .each this kontekstem odnosi się do elementów jQ...
http://jsfiddle.net/JBvyv/7/(function($){
$.fn.test = function(){
this.find('input').each(function(){
var offset= $(this).offset();
console.log(offset.left + ' ' + offset.top);
});
};
})(jQuery);
$("#a").test();
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.