Czy da się pozbyć tekstu alternatywnego podczas wczytywania obrazków?

w dziale Dostosowywanie Opery do własnych potrzeb
daris napisał(a):

Chodzi mi o to że gdy opera wczytuje obrazki wyświetlana jest wtedy w miejscu obrazka ramka z tekstem alternatywnym (chyba). I wtedy ramki są rozwalane (bo jak jest dłuższy tekst to wiadomo o co chodzi). Czy nie da się pozbyć tego tekstu (ewentualnie zastąpić jakimś obrazkiem), albo zrobić tak żeby rozmiary tej ramki wynosiły tyle co rozmiary obrazka?

Zajec napisał(a):

Nie da się. Opera nie jest w stanie przewidzieć, jakie wymiary będzie miał obrazek, którego jeszcze nie pobrała. Gdy zacznie już go pobierać i zna wtedy jego rozmiary, od razu ustawia odpowiedni rozmiar.

Możnaby za pomocą UserJS ustawiać alt na pusty ciąg znaków, ale wtedy też będzie skok rozmiaru: w drugą stronę. Puste miejsce zamieni się w obrazek.

daris napisał(a):

Już wolałbym, aby dla kazdych nie pobranych jeszcze obrazków ustawić rozmiar np 16x16. Da się tak zrobić w userJS? (jeśli tak to jak?)

I jak dokładnie zrobić żeby nie było tekstu alternatywnego? (a może da się go "przyciąc" do paru znaków?)

Barthezdeleted napisał(a):

Originally posted by daris:

Da się tak zrobić w userJS? (jeśli tak to jak?)


Pewnie można było by przerobić ten skrypt:
http://userjs.org/scripts/download/browser/enhancements/add-alt-text.js

daris napisał(a):

Zrobiłem tak:

window.addEventListener('load',function(e){
	var is = document.getElementsByTagName ('img');
	for (var i in is)
		 if (is[i].src) {
			is[i].setAttribute ('alt', '')
		}
},true);

i przy odświeżaniu co sekundę nawet dobrze to wygląda (przy odświeżaniu "na bieżąco" pojawia się tekst alternatywny i po sekundzie jest usuwany)

Zajec napisał(a):

Zamień zdarzenie "load" na "DOMContentLoaded"

daroc napisał(a):

Moim zdaniem Opera mogłaby tych ramek w ogóle nie wyświetlać...

Zajec napisał(a):

Originally posted by daroc:

Moim zdaniem Opera mogłaby tych ramek w ogóle nie wyświetlać...

Jakich ramek? Może screen jakiś?

daris napisał(a):

Pewnie chodzi o tą ramkę (nie html'ową tylko obrazkową smile z tekstem alternatywnym

quiris napisał(a):

Originally posted by Zajec:

Zamień zdarzenie "load" na "DOMContentLoaded"


Oprócz tego, jeszcze trzeba zmienić jedną rzecz, a poza tym, pusty alt jest trochę niebezpieczny. Lepiej już wstawić krzyżyk:
window.addEventListener('DOMContentLoaded', function(e) {
	var is = document.getElementsByTagName ('img');
	for (var i in is) {
		if (is[i].src) {
			is[i].setAttribute('alt', '#');
		}
	}
}, false);

Zajec napisał(a):

Hm, dlaczego niebezpieczny?

quiris napisał(a):

Originally posted by Zajec:

Hm, dlaczego niebezpieczny?


Dlatego, że nie wiemy czy jakiś obrazek ma być, czy nie, bo Opera nie pokaże zupełnie nic. Dla mnie osobiście nie jest to sytuacja prawidłowa.

Zajec napisał(a):

Agreed ;-)

daroc napisał(a):

Originally posted by Zajec:

Jakich ramek? Może screen jakiś?


Takich...
3Clipboard Image.png