Wpis z mikrobloga

Nazwa projektu: JustJoinIT Unofficial Extension
Wpis: 10 o-s-t-a-t-n-i

Ostatnia funkcjonalność dodana

Zamieszczam screen niżej
Teraz na stronie oferty, możemy bardzo sprawdzić opinie / oferty pracy na innych serwisach.

Nawet to całkiem fajnie działa mimo mega prostoty.
Na samym początku chciałem scrapować serwisy i wyniki od razu umieszczać w rozszerzeniu, lecz to ma być prosty projekt więc odpada. Teraz po prostu wstawiam przechwyconą nazwę firmy do urli np.

"[https://4programmers.net/Search?q="](https://4programmers.net/Search?q=") + encodeURIComponent(companyName);
I ten sposób rozwiązuje niemal wszystko.

JustJoinIT to dosyc ciekawy przypadek, gdzie manipulowanie po DOMie jest dosyć utrudnione:
- klasy css często się zmieniają. Aby znaleźć, to co nas interesuje trzeba nawigować po stałych rzeczach. Gdy chcemy znaleźć element z nazwą firmy, to szukamy w divach frazę Company name, następnie udajemy się do parenta i stamtąd nawigujemy niżej do linka zawierającego nazwe uff

var divs = Array.from(document.querySelectorAll("div"));
var companyNameDiv = divs.find(
(f) => f.innerText != null && f.innerText.startsWith("Company name")
);
var companyNameLink = companyNameDiv.parentElement.querySelector("a");
var companyName = companyNameLink.innerText.trim();

- dodatkowym utrudnieniem jest to, że cały front budowany jest jsem. Gdy klikamy po serwisie musimy sobie jakoś z tym poradzić, że nie wszystkie elementy zostają od razu wczytane. Musimy zaimplementować czekanie. Ja to rozwiązuję prostym setInterval, ktory dopala się co sekundę:

var interval = setInterval(function(){
var element = document.querySelector('....'); // pobierz element
if (element == null) {
return; // jeśli nie ma jeszcze wgranego elemetu, to przerwij operację
}
// ok, znaleźliśmy element, więc możemy działać dalej
clearInterval(interval); // stopujemy naszego intervala

// .... tutaj już możemy operować na elementach
}, 1000);

I to tyle jeśli chodzi o extension justjoinit'a.

W następnym poście opiszę proces publikacji w chrome store oraz wrzucę link jakby ktoś chciał sobie zainstalować rozszrzenie u siebie.

Co planuje po tym projekcie?
Chyba jakiś extension do wykop.pl, tak więc stay tuned!

to be continued ヘ( ^o^)ノ\(^_^ )
#programowanie #justjoinit #javascript #chrome #chromeextensions #chromeextensions
highfiveguys - ✨Nazwa projektu: JustJoinIT Unofficial Extension✨
Wpis: 10 o-s-t-a-t-...

źródło: comment_16362136606ZfPGSqlaAtEP746GzUyrs.jpg

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach