2011-07-26 11 views
9

Prawdopodobnie głupie pytanie, ale szczerze mówiąc nie mogę zawinąć głowy, co tu jest nie tak.Lądowanie linki kotwicy w niewłaściwej pozycji

http://harrisonfjord.com/thinkinc/

Witryna buduję w tej chwili. Chcę utworzyć link zakotwiczenia pod adresem http://harrisonfjord.com/thinkinc/index.php#sponsors. Mam założyć kotwicę nastąpić tuż przed w poniższym kodzie:

<a name="sponsors"></a> 
    <div class="sponsors"> 
     <div class="sponsors-left"> 
      <h2>Sponsors</h2> 
       <p>Support the lovely folks who support us! Visit their websites, join their mailing lists and peruse their wares. They are all highly-deserving of your custom, and we're thrilled to have each and everyone one of them on-board!</p> 
      </div> 

Jednak po kliknięciu na link kotwicy wyląduje około połowy div. Pomyślałem, że mógł to być problem z ładowaniem obrazów po załadowaniu linku kotwicy, więc ręcznie wstawiłem szerokość/wysokość wszystkich tagów. Zrobiłem to samo dla zamiennika tekstu cufon na pasku tytułowym.

Nic z tego nie pomogło, więc teraz zwracam się do Ciebie. Zakotwiczenie nie działa również w Firefoksie, z jakiegokolwiek powodu. Jakieś myśli o tym, co zrobiłem źle?

Pozdrawiam!

Odpowiedz

11

Myślę, że problem wynika z kotwicy bez zawartości, z której korzystasz.

Ponadto, wydaje się, że name= jest deprecated in favor z id= jako identyfikator fragmentu w niektórych pierwiastków (w tym A), co sprawia, że ​​rodzaj znaczeniu, cechy identyfikacyjne są unikalne cechy NAZWA natomiast nie są więc gwarantowane.

będę próbować trzymać identyfikator fragmentu w rzeczywistym podmiotem renderable takich jak:

<h2 id="sponsors">Sponsors</h2> 

i zobaczyć, gdzie to dostaje. Nawiasem mówiąc, wygląda na dobrą konferencję, mam nadzieję, że dostaniesz kompozycję.

+0

Aha! Rozumiem, zadziałał urok, dzięki kolego. Nawiasem mówiąc - jestem jednym z organizatorów konferencji, bez web dev! Więc nie tylko będę na konferencji, ale także piję whisky z głośnikami :) – Jascination

+0

Potwierdzone jako działające w Chrome 13, ciesz się. – msw

1

Nie wiem, co standardowe strona stara się spełniać, ale jest pełna błędów:

http://validator.w3.org/check?uri=http%3A%2F%2Fharrisonfjord.com%2Fthinkinc%2F&charset=%28detect+automatically%29&doctype=Inline&group=0

Niektóre z nich tak poważne, na przykład:

  • Nie można określić trybu parsowania!
  • Nie znaleziono DOCTYPE i nieznanego elementu głównego. Przerwanie sprawdzania poprawności.

że weryfikator rezygnuje. Skontrastowane ze strony jak gnu.org

http://validator.w3.org/check?uri=www.gnu.org&charset=%28detect+automatically%29&doctype=Inline&group=0

Powinieneś być zadowolony, że strona świadczy wcale.

+0

dobry punkt, ja nie sądzę walidacja dotknięte tego rodzaju rzeczy tak zrobią później. Zajmę się tym teraz i zgłoś się, jeśli nadal jest uszkodzony, okrzyki! – Jascination

+0

Ok, z powrotem i teraz naprawiony, zatwierdzony jako HTML 4.0 Transitional. Jednak kotwica nadal nie działa! jakieś pomysły? – Jascination

2

Mam problem w iPhone dla powiązań z fragmentów, mając <a href="#info">TYPES OF INFORMATION WE COLLECT</a>, poprawnie linkami do <h3 id="info">TYPES OF INFORMATION WE COLLECT</h3>.

To nie działa prawidłowo, i naprawiłem z takiego rozwiązania (przy użyciu jQuery):

window.scrollTo(0,$('#info').offset().top); 
+1

Przyjemne obejście: użyłem go, ponieważ firefox nie lądował we właściwym miejscu po raz pierwszy, tj. Po wykonaniu linku z fragmentem, ale żądanie dokładnego adresu URL na pasku firefoxa sprawiło, że przeglądarka znalazła się we właściwym miejscu. – reallynice

5

Mam dokładnie ten sam problem w Firefoksie i rozwiązać go z tego (tak samo jak Sasi ale odpowiedź bardziej ogólne - to wykryć, czy jest kotwica w url i przewiń do niego):

$(document).ready(function() { 
    if(window.location.hash.length > 0) { 
     window.scrollTo(0, $(window.location.hash).offset().top); 
    } 
}); 

wydaje się, że jest to dobrze znany problem, zobacz https://bugzilla.mozilla.org/show_bug.cgi?id=60307

+0

To działało dla mnie na stronie, na której użyłem fragmentu js zawartości tabeli. Na jednej stronie wielu następujących po tym samym wzorze początkowy zwój nie uwzględniał dodanego tekstu z spisu treści. – covener

Powiązane problemy