1. Document.FormName.Item ("ItemName") Descrição do problema: Em IE, você pode usar document.formname.item ("itemName") ou document.formname.lements ["elementName"]; Document.FormName.Item ("ItemName") ou Document.FormName.Elements ["ElementName"]; . 2. Descrição do problema do objeto de classe de coleta: no IE, você pode usar () ou [] para obter objetos de classe de coleta; 3. Descrição do problema de atributo personalizado: No IE, você pode usar o método de obter atributos regulares para obter atributos personalizados ou pode usar o getAttribute () para obter atributos personalizados; . 4. Para obter o objeto HTML com ID como IDNAME. 5. Problema com o mesmo nome de variável que o ID do objeto HTML: no IE, o ID do objeto HTML pode ser usado diretamente como o nome da variável do objeto subordinado do documento, mas não no Firefox; O ID do objeto HTML pode ser usado. 6. Descrição do problema const: Em Firefox, você pode usar a palavra -chave const ou a palavra -chave var para definir constantes; 7. Descrição do problema do atributo Input.Type: O atributo input.Type no IE é somente leitura; 8. Window.Event Problema Descrição: Window.Event só pode ser executado no IE, não sob o Firefox, porque o evento Firefox só pode ser usado na cena em que o evento ocorre. Código do programa 10. Event.Srcelent Problema Descrição: No IE, o objeto uniforme possui uma propriedade SRCELEMENT, mas nenhuma propriedade de destino; 11. Window.Location.Href Descrição do problema: Em IE ou Firefox2.0.x, você pode usar o Window.Location ou Window.Location.href; 12. Descrição dos problemas de janela modal e não modal: no IE, janelas modais e não modais podem ser abertas através do showModaldialog e ShowModlessDialog; Treze. 14. Descrição do problema do carregamento do corpo: o objeto corporal do Firefox existe antes que a etiqueta corporal seja totalmente lida pelo navegador; 15. Descrição do problema de delegação do evento: no ie, use document.body.onload = injeção; 16. Divulgação da diferença entre os elementos dos pais acessados: no IE, use obj.parenteLement ou obj.parentNode para acessar o nó dos pais da Obj; 17. Cursor: Hand vs Cursor: Ponteiro 18. O problema do InnerText. Código do programa 19. Descrição do problema da largura do objeto e atribuição de altura: a declaração semelhante ao obj.style.Height = imgobj.Height in Firefox é inválida. 20. Descrição do problema da operação da tabela: IE, Firefox e outros navegadores têm operações diferentes nas tags de tabela. 21. Quando o problema de indentação das listas UL e OL é eliminado, o estilo deve ser escrito como: estilo de lista: nenhum; 22. Problema de transparência do CSS, isto é: Filtro: Progid: dIXEGETRANSForm.microsoft.alpha (style = 0, opacidade = 60). 23. Problema de canto arredondado do CSS, ou seja: as seguintes versões do IE7 não suportam cantos arredondados. Existem muitas perguntas sobre CSS, e até as mesmas definições de CSS têm diferentes efeitos de exibição em diferentes padrões de página. Uma sugestão adequada é que a página seja escrita no padrão DHTML padrão, e o uso de tabelas raramente é usado. Opera também é levado em consideração. BTW, em muitos casos, os padrões de interpretação do CSS de FF e Opera estão mais próximos dos padrões CSS e são mais padronizados.
Solução: use Document.FormName.Elements ["ElementName"] de maneira unificada.
Solução: use [] para obter objetos de classe de coleta de maneira unificada.
Solução alternativa: obtenha uniformemente atributos personalizados através do getAttribute ().
Solução: use getElementById ("idname") para obter o objeto HTML com ID como idName.
Solução alternativa: use document.getElementById ("idname") em vez de document.idname. É melhor não tomar nomes de variáveis com o mesmo ID do objeto HTML para reduzir os erros;
Solução: use a palavra -chave var para definir constantes uniformemente.
Solução: não modifique a propriedade Input.Type. Se você precisar modificá -lo, primeiro oculte a entrada original e insira um novo elemento de entrada na mesma posição.
Solução: adicione parâmetros de evento à função onde o evento ocorre e use var myevent = evt?
Exemplo:
<input type = "button" onclick = "doSomething (event)"/>
<Script Language = "JavaScript">
função doSomething (evt) {
var myevent = evt?
...
}
</script>
9. Event.x e Event.y Descrição do problema: No IE, o objeto uniformiza os atributos X e Y, mas nenhum atributo PageX e Pagey;
Solução: var myx = event.x?
Se você considerar a 8ª edição, basta usar o MyEvent em vez do evento.
Solução: use srcobj = event.srcelement?
Se você considerar a 8ª edição, basta usar o MyEvent em vez do evento.
Solução alternativa: use window.location em vez de window.location.href. Obviamente, você também pode considerar usar o método Location.Replace ().
Solução: use window.open (pageurl, nome, parâmetros) para abrir uma nova janela.
Se você precisar passar os parâmetros na janela da criança de volta para a janela dos pais, poderá usar a janela.Perpener na janela da criança para acessar a janela do pai. Se a janela dos pais precisar controlar a janela da criança, use var subwindow = window.open (pageurl, nome, parâmetros);
)
(1) Acesse o objeto Frame IE: Use Window.FrameId ou Window.FrameName para acessar este objeto de quadro;
Firefox: use window.frameName para acessar esse objeto de quadro;
Solução: use window.document.getElementById ("frameId") para acessar esse objeto de quadro;
(2) Mudar o conteúdo do quadro no IE e no Firefox, você pode usar window.document.getElementById ("frameId"). Src = "index.html" ou window.frameName.location = "index.html" para alternar o conteúdo de Fram de e;
Se você precisar passar os parâmetros no quadro de volta para a janela pai, poderá usar a palavra -chave pai no quadro para acessar a janela do pai.
[Nota] Este problema ainda não foi verificado e será modificado após a verificação.
[Nota] Foi provado que os problemas acima não existem no IE6, Opera9 e Firefox2.
Solução: use document.body.onload = new function ('inject ()');
[Nota] A diferença entre função e função
Solução: como o Firefox e o IE suportam o DOM, obj.parentNode é usado para acessar o nó pai da OBJ.
Descrição do problema: o Firefox não suporta a mão, mas o IE suporta o ponteiro, ambos são indicadores em forma de mão.
Solução: Use o ponteiro de maneira unificada.
Descrição do problema: O InnerText funciona corretamente no IE, mas o InnerText não funciona no Firefox.
Solução alternativa: use o TextContent em vez do InnerText em navegadores que não são de AI.
Exemplo:
if (navegator.appname.indexof ("explorer")> -1) {
document.getElementById ('Element'). InnerText = "meu texto";
} outro{
document.getElementById ('elemento'). textContent = "meu texto";
}
[Nota] O InnerHTML é suportado por navegadores como IE e Firefox.
Solução: use obj.style.Height = imgobj.Height + 'px' em uniforme;
Solução:
Código do programa
// Adicione uma linha em branco à tabela:
var row = Otable.insertrow (-1);
var celular = document.createElement ("td");
Cell.innerhtml = "";
Cell.className = "xxxx";
row.appendChild (célula);
[Nota] Como eu raramente uso o JS para operar tabelas diretamente, nunca encontrei esse problema. Recomenda -se usar conjuntos de estruturas JS para manipular tabelas, como o jQuery.
O atributo de margem é válido para o IE e o atributo de preenchimento é válido para o Firefox. ← Esta frase está incorreta, consulte os detalhes ↓
[Nota] Este problema ainda não foi verificado e será modificado após a verificação.
[Nota] comprovado que, no IE, definir a margem: 0px pode remover o indentação para cima, para baixo, para a esquerda e direita, em branco, número da lista ou pontos da lista, e a configuração do preenchimento não tem efeito no estilo; O 0PX pode remover apenas o espaço em branco para cima e para baixo, pode remover apenas o indentamento esquerdo e direito após a definição do preenchimento: 0px. Em outras palavras, no IE, você pode alcançar o efeito final simplesmente definindo a margem: 0px, preenchimento: 0px e estilo de lista: nenhum deve ser definido ao mesmo tempo no Firefox para obter o efeito final.
FF: Opacity: 0.6.
[Nota] É melhor escrever os dois e colocar o atributo de opacidade abaixo.
FF: -Moz-Border-Radius: 4px, ou -moz-Border-Radius-Topleft: 4px; - Radius- Bottomright: 4px;.
[Nota] O problema do canto arredondado é um problema clássico no CSS.