Jump to content
  • 0

Подмена html кода


Maniac
 Share

Question

12 answers to this question

Recommended Posts

  • 0
Как реализовать подмену html кода? Чтобы тому, кто смотрит сайт с браузера IE - выводился один html код, а тому, кто смотрит тот же сайт с браузера Firefox - выводился другой html код.

Самый простой способ, который я знаю, это для всех браузеров выводишь один текс,но скрываешь его в спец.тегах для ИЕ, которые его не видят, а для ИЕ наоборот.

Link to comment
Share on other sites

  • 0

ТС походу хочет как я понял подгружать разные стилевые файлы (ну или выводить текст типа не пользуйтесь ИЕ пользуйтесь ФФ?) в зависимости от браузера, но не стоит забывать и о его версии, вот тут то задача усложняется в разы!

Edited by rus
Link to comment
Share on other sites

  • 0

А по конкретней можно... Например, есть сайт: http://vimeo.com/ , где присутствует такая фишка. Если html код смотреть с IE 8, то где-то в районе 127 строки мы видим такое:

<li class="firstborn join">
<a href="/join" title="Join Vimeo"><div class="joinimage loggedout"></div></a>
</li>

</ul>
</div> </div>

<div id="cap" class="native"></div>

<div id="main">
<div id="header">
<h1>Welcome, you're new, aren't you?</h1>

Если html код той же странички смотреть с Firefox, то где-то в районе 127 строки мы видим немного другое:

<li class="firstborn join">
<a href="/join" title="Join Vimeo"><div class="joinimage loggedout"></div></a>
</li>

</ul>
</div> </div>

<div id="cap" class="img">
<img src="http://assets.vimeo.com/images/top_cap.png" alt="" />
</div>

<div id="main">
<div id="header">
<h1>Welcome, you're new, aren't you?</h1>

Как видим, здесь отличие в теге img. Но как они так сделали??? Может есть какой нибудь скрипт, который определяет браузер просматривающего юзера и выводит ему соответствующий html код?

Link to comment
Share on other sites

  • 0

Вы что-то перепутали... в ИЕ мы какраз видим этот img, а в FF и прочих не видим. Тут как раз условными комментариями можно решить, однако эти комментарии будут видны при просмотре исходного кода, а все, что меняется JavaScript-ом отображается в первичном состоянии при просмотра кода. Там не только img появляется, там еще меняется класс родительского элемента.

Поизучайте код этой страницы. В начале есть такой фрагмент:

<!--[if lte IE 6]>
<link rel="stylesheet" type="text/css" href="http://assets.vimeo.com/css/ie6.css?36090" />
<script type="text/javascript" src="/assets/js/ie6.js"></script>
<![endif]-->

Кстати вот вам и условные комментарии.

Также заметил, что здесь используется mootools и ajax... Значит возможно, при обращении происходит выяснение параметров броузера, отправляется это на сервер, а сервер уже формирует страничку в зависимости от этих параметров и снова отправляет в броузер.

Link to comment
Share on other sites

  • 0
$_SERVER['USER_AGENT']

Можно, но очень геморно, поскольку разнообразие заголовков стремится к бесконечности )) Да и подделать легко, даже официально ряд броузеров может притворяться не теми кем они являются. Достоверно определить броузер и версию можно где-нибудь на 80%.

Но в данной ситуации достаточно отличить только ИЕ, так что вполне возможно и $_SERVER['USER_AGENT']

Link to comment
Share on other sites

  • 0
А что если выдавать всем, а на уровне CSS, допустим

<img src="http://assets.vimeo.com/images/top_cap.png" class="class" alt="" />

* HTML .class{display:none}

Ну или как-то иначе, не важно кому надо показывать/скрывать

Оно все равно в коде будет.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy