Mozzzia FirefoxとIE

32971 ワード

もっと読む
 BS        javascript,       javascript      。              ,
。 , BoSS , 。
IE FF js ( , ), 。


. IE Internet Explorer, MF
/FF Mozzila Firefox

//window.event
IE: window.event
FF: window.event 。 event 。 onmousemove
=doMouseMove(event)
var event = event || window.event;
example:
<script>
function test(event) {
var event = event || window.event;
//do Something
}
</script>
<input type="button" value="click" onclick="test(event)"/>


//
IE:event.x event.y。
FF:event.pageX event.pageY。
: event.clientX event.clientY 。

// ( )
IE:event.offsetX event.offsetY。
FF:event.layerX event.layerY。

<script>
function test(event) {
var event = event || window.event;
//or var event = event ? event : window.event;// 2 , if else( )
var x = event.offsetX || event.layerX;
var y = event.offsetY || event.layerY;
//do Something
}
</script>
<div onmousedown="test(event)"></div>
/** , **/

//event.srcElement
:IE ,event srcElement , target ;Firefox ,even target ,
srcElement .
: obj(obj
= event.srcElement ? event.srcElement : event.target;) IE event.srcElement
Firefox event.target. event 。

//event.toElement

IE ,even srcElement , target ;Firefox ,even target , srcElement


var target = e.relatedTarget || e.toElement;

// x y :style.posLeft style.posTop
IE: 。
FF: 。
:object.offsetLeft object.offsetTop。

//
IE:document.body.offsetWidth document.body.offsetHeight。 : body 。
FF:window.innerWidth window.innerHegiht, document.documentElement.clientWidth document.documentElement.clientHeight。
:document.body.clientWidth document.body.clientHeight。

//
IE:element.attachEvent("onclick", function);。
FF:element.addEventListener(
"click", function, true)。
:element.onclick
=function。 onclick , onclick ,
onclick , attachEvent addEventListener , 。 :element.attachEvent(
"onclick", func1);element.attachEvent("onclick", func2) func1 func2 。

//
IE: div1 value, div1.value div1["value"] 。
FF: div1.value div1[
"value"] 。
:div1.getAttribute(
"value")。

//document.form.item
IE: : document.formName.item("itemName") , MF
FF
/IE: document.formName.elements["elementName"]

// /
(1) :
(),IE ,MF 。
(
2) :
[] 。 :document.forms(
"formName") document.forms["formName"]。
:document.getElementsByName(
"inputName")(1) document.getElementsByName("inputName")[1]

//HTML id
(1)
IE ,HTML ID document 。 MF 。
(
2)
getElementById(
"idName") idName

// idName
(1)
IE , eval(idName) id idName HTML , MF 。
(
2)
getElementById(idName) eval(idName)。

// HTML id
(1)
MF , id HTML , HTML id ,IE 。
(
2)
var , , IE 。
, HTML id , 。

//document.getElementsByName() document.all[name]
: IE ,getElementsByName()、document.all[name] div
( )。
//document.all
Firefox document.all, 。 getElementById("*")
getElementByTagName(
"*")
document.all.length ,

//input.type
:IE input.type ; Firefox input.type

//window.location.href
:IE Firefox2.0.x , window.location window.location.href;Firefox1.5.x ,
window.location
: window.location window.location.href

//
:IE , showModalDialog showModelessDialog ;Firefox
: window.open(pageURL,name,parameters) 。
, window.opener .
var parWin = window.opener; parWin.document.getElementById("Aqing").value = "Aqing";

//frame
frame :
<frame src="xxx.html" mce_src="xxx.html" id="frameId" name="frameName" />
(1) frame :
IE: window.frameId window.frameName frame . frameId frameName 。
FF: window.frameName frame .
, IE Firefox window.document.getElementById(
"frameId") frame .
(
2) frame :
IE Firefox window.document.getElementById(
"testFrame").src = "xxx.html" window.frameName.location = "xxx.html" frame .
frame ( opener, parent frame), frme parent 。
:window.parent.document.form1.filename.value
="Aqing";

//body
Firefox body body ; IE body body

//
IE:document.body.onload = inject; //Function inject()
FF:document.body.onload = inject();

//firefox IE (parentElement)
IE:obj.parentElement
FF:obj.parentNode
: FF IE DOM, obj.parentNode

//innerText IE , innerText FireFox . textContent

//FireFox HTML style , px。 ie

//
IE:parentElement、parement.children,element.romoveNode(true)。
FF:parentNode、parentNode.childNodes,node.parentNode.removeChild(node)。

// select options
[] ,SelectName.options.item() , SelectName.options.length, SelectName.options.add/remove 。
add ,
select options:
document.getElementById(
"ddlResourceType").options.length=0;
select option:
document.getElementById(
"ddlResourceType").options.remove(indx);
select option:
document.getElementById(
"ddlResourceType").options.add(new Option(text,value));
IE FF :
document.getElementById(
"ddlResourceType").options[indx] = null;

//

FF setCapture()、releaseCapture()

IE:
obj.setCapture();
obj.releaseCapture();
FF:
window.captureEvents(Event.MOUSEMOVE
|Event.MOUSEUP);
window.releaseEvents(Event.MOUSEMOVE
|Event.MOUSEUP);
if (!window.captureEvents) {
o.setCapture();
}
else {
window.captureEvents(Event.MOUSEMOVE
|Event.MOUSEUP);
}
if (!window.captureEvents) {
o.releaseCapture();
}
else {
window.releaseEvents(Event.MOUSEMOVE
|Event.MOUSEUP);
}


//

FF CSS ,IE JS

IE: obj.onselectstart
= function() {return false;}
FF:
-moz-user-select:none;


//
IE:VML。
FF:SVG。

//CSS:
IE:filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)。
FF:opacity:
0.6

//CSS:
IE: 。
FF:
-moz-border-radius:4px, -moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;
-moz-border-radius-bottomleft:4px;-moz-border-radius- bottomright:4px;。

//CSS:
IE:border:2px outset;。
FF:
-moz- border-top-colors: #d4d0c8 white;-moz-border-left-colors: #d4d0c8 white;
-moz-border-right-colors:#404040 #808080;-moz-border-bottom-colors:#404040 #808080;。


CSDN , :http:
//blog.csdn.net/IBM_hoojo/archive/2010/07/02/5708440.aspx