🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.javascript
Article #39566

Obejście patentu Eolas, kolejne starcie

#39566
From: porneL
Date: Sat, 22 Apr 2006 16:06
55 lines
2253 bytes
Obejście na to początkowo wykombinowałem takie:  
(http://pornel.net/patent/obejscie)
object[i].outerHTML = objec[i].outerHTML

co miało dodawać je ponownie do dokumentu. Niestety outerHTML czasem nie  
zawiera elementów <param> i generalnie niezbyt dobrze wpływa na stabilność  
IE.

Stąd podejście kolejne, zamotane:

/*@cc_on @*/
/*@if (@_jscript_version >= 5.6)
(function(){
	var o,n,j,i,p,t,ob = new Array(),objs =  
document.getElementsByTagName('object');	
	for(i=0;i<objs.length;i++) if  
(!objs[i].className.match(/(^|\s)noninteractive($|\s)/)) ob.push(objs[i]);
	objs=null;
	for(i=0;i<ob.length;i++)
	{
		t='';
		for(j=0;j<ob[i].childNodes.length;j++)
		{
			if (ob[i].childNodes[j].tagName != 'OBJECT')
			t += ob[i].childNodes[j].outerHTML;
		}
		t = ob[i].outerHTML.replace("</OBJECT>",t + "</OBJECT>");
		
		n = ob[i].nextSibling;
		p = ob[i].parentNode;
		
		p.removeChild(ob[i]);
		ob[i] = null;
	
		o = document.createElement('span');
		o.innerHTML = t;
		o = o.firstChild;
	
		p.insertBefore(o,n);
	}
})();
@end @*/

To tworzy kopię kolekcji obiektów. Z każdego wyciąga kod childNodes (w ten  
sposób dostaję <param>) i dokleja do outerHTML, a następnie w okrężny  
sposób to wstawia do dokumentu.

U mnie na IE6 sp2 i sp1 działa dla Flash Satay i metody Hixiego.

Testy, komentarze, poprawki?

-- 
* html {redirect-to: url(http://kurs.browsehappy.pl);}
this.author = new Geek("porneL");
Technical Details
Message-ID: <op.s8e207j7fux2e6@pornel.net>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: porneL <niusy@pornel.net>
Newsgroups: pl.comp.lang.javascript,pl.comp.www
Subject: Obejście patentu Eolas, kolejne starcie
Followup-To: pl.comp.lang.javascript
Date: Sat, 22 Apr 2006 17:06:33 +0100
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 55
Message-ID: <op.s8e207j7fux2e6@pornel.net>
NNTP-Posting-Host: pornel.plus.com
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1145722017 4018 84.92.248.233 (22 Apr 2006 16:06:57 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Sat, 22 Apr 2006 16:06:57 +0000 (UTC)
X-User: pornelspam
User-Agent: Opera Mail(BETA2)/9.00 (MacPPC)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit