Witam
Czy w Operze można ustawić, żeby wszystkie klikane linki oraz strony otwierane z paska adresu, ulubionych itp. otwierały się w nowej karcie? (chodzi mi o zwykłe kliknięcie LPM, bez żadnych ctrl itp.)
W opcjach zaawansowanych w kategorii karty odznacz opcję Ponowniej użyj karty - powinno pomóc.
Mówisz o opcji "Używaj bieżącej karty"? Mam odznaczone.
Gdy w pasku adresu wciśnisz Enter, to nowa strona otwiera się zawsze w tej samej karcie. Jeśli natomiast chodzi o to, że na części stron linki po kliknięciu otwierają się w nowej karcie to jest to wina webmasterów. Umieszczają oni wpis target="_blank" który informuje przeglądarkę, że ten link trzeba koniecznie otworzyć w nowej karcie.
Aby się pozbyć tych targetów nadanych przez webmastera należy zastosować skrypt "Otwieranie stron w tej samej karcie" ze strony http://operawiki.info/SkryptyUzytkownika , jak się go instaluje masz napisane na tej samej stronie w akapicie o nagłówku "Jak ich używać?".
Zajec, mam dziwne wrażenie że jemu chodzi o odwrotny efekt =]
O, faktycznie. Ale przecież to zwraciować wtedy można. Jakiego linka na oglądanie stronie byśmy nie kliknęli, otworzy się w nowej karcie. Przejrzenie strony skłądającej się z 10 podstron to automatycznie 10 kart :-|
Originally posted by Zajec:
Przejrzenie strony skłądającej się z 10 podstron to automatycznie 10 kart :-|
Wiem. O to chodzi. Mam dość nietypowe oczekiwania, to fakt
Jeśli tak chcesz... ;-) Przeczytaj instrukcję instalacji skryptów użytkownika na stronie do której podlinkowałem i zastosuj sobie taki skrypt:
window.addEventListener('DOMContentLoaded',function() { var links = document.getElementsByTagName('a'); for(var i=0; i<links.length; i++) { if (!links[i].getAttribute('target')) links[i].setAttribute('target', '_blank'); } },false);
Oo... fajne to zdarzenie DOMContentLoaded.
Zawsze denerwowało mnie, że w większości UserJS trzeba czekać na załadowanie całego dokumentu. Na początek podrzucę to zdarzenie do googleimages-thumblink.js, removeblank.js i spróbuję jeszcze do autosizer.js. Mam nadzieję że będzie wszędzie działać.
Swoją drogą na co dokładnie reaguje zdarzenie BeforeEvent.load? Nie mogę tego znaleźć nigdzie, żeby było opisane w jasny sposób..
Nie uda się chyba zastosować tego co autosizer.js z tego względu, że obrazek musi zostać załadowany aby przeglądarka mogła go odpowiednio pomniejszyć. Możnaby natomiast zrobić pewnę pętle, która dopasuje obrazek w momencie, gdy tylko pozna jego rozmiar: czyli po pobraniu jego pierwszych kilku kilobajtów.
Co do BeforeEvent.load, to skrypt taki będzie wykonany przed skryptem, który został umieszczony w onload="". Dla przykładu z elementem body:
<body onload="alert('Rafał');"> <script type="text/javascript"> document.addEventListener('BeforeEvent.load', function () { alert('Miłecki'); },false); </script>
Zwróci dwa alerty w kolejności:
1) Miłecki
2) Rafał
Ciężka sprawa z tym autosizerem... Cóż, pewnie gdyby się to dało zrobić lepiej (w tak prosty sposób), to autor skryptu by to zrobił.
Eee tam ciężka ;-) Powiedz mi tylko, czy chodzi Ci o ten: http://userjs.org/scripts/browser/enhancements/autosizer ?
Dokładnie o ten. Kiedyś sam próbowałem to jakoś rozwiazać, ale ograniczyło się to do zastąpienia zdarzenia load timeoutem, ale jeśli obrazek nie zdążył się załadować (pierwsze x bajtów) po określonym przeze mnie czasie, to obrazek był przesunięty (jego górna krawędź znajdowała się na środku ekranu)...