Sto facendo una funzione che crea al volo un div. Vorrei rendere il div "draggabile" quindi uso questo codice:
codice:
var titlebar = document.createElement('div');
if(window.addEventListener){ // Mozilla, Netscape, Firefox
	titlebar.addEventListener('mousedown', startDrag, false);
	titlebar.addEventListener('mouseup', stopDrag, false);
	titlebar.name = name;
} else { // IE
	titlebar.attachEvent('onmousedown', startDrag);
	titlebar.attachEvent('onmouseup', stopDrag);
	titlebar.name = name;
}
mentre nella funzione startDrag recupero il parametro "name" così:
codice:
function startDrag(e) {
	if (!e) var e = window.event;
	name = (e.target) ? e.target.name : e.srcElement.name;
	var win = document.getElementById(name);
	//etc etc
}
Ora, mentre su Firefox funziona egregiamente, su IE name mi risulta undefined.
La cosa strana è che lo stesso identico codice invece funziona su un'altra funzione (al div aggiungo un bottone per "chiudere" il div)
codice:
var btn = document.createElement('button');
if(window.addEventListener){ // Mozilla, Netscape, Firefox
	btn.addEventListener('click', closeWin, false);
	btn.name = name;
} else { // IE
	btn.attachEvent('onclick', closeWin);
	btn.name = name;
}
e la funzione closeWin è questa:
codice:
function closeWin(e) {
	if (!e) var e = window.event;
	name = (e.target) ? e.target.name : e.srcElement.name;
	var win = document.getElementById(name);
	document.body.removeChild(win);
}
che funziona egregiamente sia su FF che su IE.
Cos'è che mi sfugge? :master: