+ All Categories
Home > Technology > MSDN Webcast - Melhores práticas cross browser

MSDN Webcast - Melhores práticas cross browser

Date post: 11-Jul-2015
Category:
Upload: jp-clementi
View: 874 times
Download: 2 times
Share this document with a friend
35
blogs.msdn.com/jpclementi twitter.com/jpclementi blogs.msdn.com/danielsf twitter.com/Eng_DanielSF
Transcript
Page 2: MSDN Webcast - Melhores práticas cross browser

2

Desafios de

Cross-Browser

Cross-Browser o

que fazer

Cross-Browser o

que não fazer

Page 3: MSDN Webcast - Melhores práticas cross browser

3

Novas versões lançadas frequentemente

Muitas versões diferentes

Muitos browsers diferentes

Page 4: MSDN Webcast - Melhores práticas cross browser
Page 5: MSDN Webcast - Melhores práticas cross browser

if( condition )

{

// Código primário

}

else

{

// Código alternativo

}5

Page 6: MSDN Webcast - Melhores práticas cross browser

6

if( navigator.userAgent.indexOf('MSIE') != -1 )

{

// Código escrito para browser X

}

else

{

// Código escrito para browser Y

}

Page 7: MSDN Webcast - Melhores práticas cross browser

if( document.all )

{

// Código escrito para browser X

}

else

{

// Código escrito para browser Y

}7

Page 8: MSDN Webcast - Melhores práticas cross browser

if( window.addEventListener )

{

// Código escrito para browsers

// que suportam addEventListener

}

else

{

// Código escrito para browsers

// que não suportam addEventListener

}8

Page 9: MSDN Webcast - Melhores práticas cross browser

9

Page 10: MSDN Webcast - Melhores práticas cross browser

10

Page 11: MSDN Webcast - Melhores práticas cross browser

window.addEventListener("load", fn, false);

11

Page 12: MSDN Webcast - Melhores práticas cross browser

if( window.addEventListener )

{

window.addEventListener("load", fn, false);

}

12

Page 13: MSDN Webcast - Melhores práticas cross browser

if( window.addEventListener )

{

window.addEventListener("load", fn, false);

}

else if( window.attachEvent )

{

window.attachEvent("onload", fn);

}

13

Page 14: MSDN Webcast - Melhores práticas cross browser
Page 15: MSDN Webcast - Melhores práticas cross browser

15

Page 16: MSDN Webcast - Melhores práticas cross browser

// Executar um teste que direciona paraum problema conhecido

var testPassed = runTest();

// Checar se o teste passou

if(!testPassed)

{

// Se não, aplicar um workaround

}

16

Page 17: MSDN Webcast - Melhores práticas cross browser
Page 18: MSDN Webcast - Melhores práticas cross browser

= Ponto de deteção = Código alternativo

Detecção de funcionalidadeDetecção de versão

Page 19: MSDN Webcast - Melhores práticas cross browser

19

Page 20: MSDN Webcast - Melhores práticas cross browser

// Using the User Agent String

if( navigator.userAgent.indexOf(x) != -1 )

{

// Browser-specific code

}20

Page 21: MSDN Webcast - Melhores práticas cross browser

// Using Objects

if( document.all )

{

// Browser-specific code

}

Page 22: MSDN Webcast - Melhores práticas cross browser

// Using Library-based Detection

if( jQuery.browser.msie )

{

// Browser-specific code

}

Page 23: MSDN Webcast - Melhores práticas cross browser

// Using Conditional Comments

<!--[if IE]>

// Browser-specific code

<[endif]-->

Page 24: MSDN Webcast - Melhores práticas cross browser

// ... but if you must, target legacy only

<!--[if IE lte 7]>

// Legacy browser-specific code

<[endif]-->

Page 25: MSDN Webcast - Melhores práticas cross browser
Page 26: MSDN Webcast - Melhores práticas cross browser

if( window.postMessage )

{

window.addEventListener();

}

Page 27: MSDN Webcast - Melhores práticas cross browser

Fácil de

pensar em

browsers

Page 28: MSDN Webcast - Melhores práticas cross browser

.target

{

border-radius: 20px;

-moz-border-radius: 20px;

-webkit-border-radius: 20px;

}

28

Page 29: MSDN Webcast - Melhores práticas cross browser

<!-- Elements with fallback content -->

<video src="test.vid">

<object src="test.vid">

<a href="test.vid">

Download Video

</a>

</object>

</video>

29

Page 30: MSDN Webcast - Melhores práticas cross browser

<!-- Generic element handling -->

<svg width="100" height="100">

<circle fill="#090" cx="50" cy="50"r="50"/>

</svg>

30

Page 31: MSDN Webcast - Melhores práticas cross browser
Page 32: MSDN Webcast - Melhores práticas cross browser

Evite detecção

de browser

Use detecção de

funcionalidade

Page 33: MSDN Webcast - Melhores práticas cross browser

33

Desafios de

Cross-Browser

Cross-Browser o

que fazer

Cross-Browser o

que não fazer

Mais: http://api.jquery.com/jQuery.support/

Page 34: MSDN Webcast - Melhores práticas cross browser

34

Visite o blog to time

http://blogs.msdn.com/ie

Baixe o Internet Explorer 9 Platform

preview

www.IETestDrive.com

Page 35: MSDN Webcast - Melhores práticas cross browser

Recommended