2010-09-12 4 views
3

У меня есть html-страница с некоторыми ссылками. Когда вы нажимаете на ссылку, некоторый код jQuery скрывает контейнер div и показывает другой div. Ссылки оригиналов в первом div больше не видны.Сенсорный экран реагирует на скрытые ссылки

С точки зрения браузера (webkit on android) все работает отлично.

Но если я касаюсь экрана, скрытые ссылки реагируют так, как если бы они были видны. Если я коснусь экрана, где будут скрытые ссылки, я вижу оранжевый прямоугольник. Браузер ничего не делает, он показывает только ссылку.

Как можно синхронизировать сенсорный экран и функции jquery hide/show?

Мой тест на веб-кит, андроид и телефон sony ericson xperia.

Я понял тестовую страницу с феноменом. Посмотреть here или с этим QR-код:

alt text

При нажатии на эту ссылку, вы идете к DIV без каких-либо ссылок, но, на мой телефон, если я прикасаюсь к первой линии, я вижу эффект на невидимая ссылка.

Вот HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
    <head> 
    <title>Test for Stackoverflow</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <script type="text/javascript" src="jquery-1.4.2.min.js"></script> 
    <script type="text/javascript"> 
$(document).ready(function() 
{ 
    $("#with-link a").click(function() 
    { 
    $("#with-link").hide("slow"); 
    $("#after-touch").show("slow"); 
    return false; 
    }); 
}); 

    </script> 
    </head> 
    <body> 
    <div id="with-link"> 
     Oh... <a href="http://stackoverflow.com">It's a link !</a> 
    </div> 
    <div id="after-touch"style="display:none"> 
     But it's not go to stackoverflow :-)<br> 
     To Touch Or Not To Touch that is the question. 
    </div> 
    </body> 
</html> 
+1

Под 'visibles', вы имеете в виду' видимость: hidden'-ed или 'display: none'-ed? – Eric

+0

Я использую функцию jquery hide: $ (селектор) .hide ("slow"). – Istao

+1

@ Истао это в то время как в течение 0.6 секунд ссылка скрывается или после ее исчезновения? Вы можете показать некоторый HTML? –

ответ

0

Я не смартфон, чтобы проверить это, но мой взгляд на это, что ссылка не исчезает полностью: Это просто скрыты.

Сколько у вас ссылок? если это только один, вы можете просто удалить его из существования (когда вам нужно, чтобы скрыть его)

$('#mylink').remove(); 

, а затем создать его снова

$('#linkcontainer').append('<a href="#">damn link</a>'); 

Если у вас есть ссылки, это не является удобным методом , Затем вы можете играть с CSS, поместить ссылку на абсолютную и отправить ее на -4999px влево. Это будет ваша функция скрыть;)

+0

Это работа! Благодарю. – Istao

Смежные вопросы