Vanliga frågor från webbutvecklare

Inledning

  1. Hur ser Google Chrome ut på insidan?
  2. Var kan jag hitta information om andra webbläsare?

Användaragent

  1. Vad är Google Chromes användaragentsträng?

Språkkodning

  1. Tecken visas fel i Google Chrome
  2. Det fungerar inte att deklarera teckenkodningen med JavaScript (document.write)
  3. Strängen '%B1%C1%C3%E5' visas i stället för två kinesiska tecken i Google Chrome

Skript och webbprogram

  1. Min ActiveX-kontroll laddas inte
  2. Mitt JavaScript körs inte som det borde

Rendering och webbläsarens beteende

  1. Min webbplats ser annorlunda ut i Google Chrome än i Internet Explorer
  2. Hur testar jag min webbplats i Google Chrome?
  3. Teckensnittsspecifikationer i en extern formatmall har ingen effekt
  4. Popup-fönstren på min webbplats visas inte i Google Chrome
  5. Min webbplats skyddas av SSL och ett utropstecken i stället för ett lås visas för den i Google Chrome
  6. Programmeringsgränssnittet för HTML5-databaser stöds inte i Google Chrome
  7. Hur anpassar jag utseendet på och funktionen hos genvägar i Google Chrome som pekar till min sida?
  8. Hur kan jag öppna en ny flik i en separat process från en webbsida?

Sökning

  1. Om jag går in på en sida i ett intranät visas en sökresultatsida i stället för sidan i intranätet
  2. Hur kan jag få med min webbplats sökmöjligheter i sökalternativen i Google Chrome?

Inledning

1. Hur ser Google Chrome ut på insidan?

Google Chrome har många funktioner som webbansvariga kan utnyttja för att förbättra för användaren. Gears är inbyggt i Google Chrome, och därför kan webbansvariga dra nytta av programmeringsgränssnitt såsom offlinelagring. Dessutom kan ett webbprogram se mer ut som ett normalt program i Google Chrome, eftersom användarna kan starta Google Chrome i ett läge med ett väldigt sparsamt gränssnitt, där det inte finns något annat än en namnlist.

Dessutom används en helt ny JavaScript-motor (V8) i Google Chrome, och den är mycket snabbare än andra JavaScript-tolkar. Det innebär att du kan utveckla mer komplicerade och beräkningsintensiva AJAX-program med färre begränsningar vad gäller snabbhet och datorberäkningar. Slutligen bygger Google Chrome på WebKit, så användare av Google Chrome kan ha glädje av de CSS3-funktioner som läggs till i WebKit så fort de lanseras.

2. Var kan jag hitta information om andra webbläsare?

Det finns många andra webbläsare du kan välja. Läs om några av de vanligaste webbläsarna på webbplatserna som listas här nedanför:

Användaragent

3. Vad är Google Chromes användaragentsträng?

Google Chromes användaragentsträng är:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.X.Y.Z Safari/525.13.

Renderingsmotorn WebKit används i Google Chrome, liksom i andra webbläsare såsom Apples Safari. Webbsidor bör se likadana ut i Google Chrome som i dessa andra webbläsare som också baseras på WebKit. Du kan söka efter webkit i användaragentsträngen om du vill söka efter dessa webbläsare i stället för ett visst namn på en webbläsare (t.ex. Google Chrome eller Safari).

Språkkodning

4. Tecken visas fel i Google Chrome

För att hjälpa webbläsaren att återge innehållet korrekt bör du alltid ta med information om innehållet och teckenkodningen i början av dokumentets källkod. Om du använder ramar eller iframe-taggar ska du ange kodningen även i början av dessa ramars källkod. Vissa webbläsare (däribland Google Chrome) känner inte igen kodningsdeklarationer långt ned i dokumentet (t.ex. efter CSS-kod eller skript i head-avsnittet i dokumentet).

Exempel på en bra placering av kodningen:

<html>
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
      <script type="text/javascript">
      ... din JavaScript-kod ...
      </script>
      .......

Se även till att webbservern inte skickar HTTP-huvuden som står i konflikt med kodningen. Huvuden som skickas av webbservern åsidosätter teckenkodsdeklarationen på sidan.

5. Det fungerar inte att deklarera teckenkodningen med JavaScript (document.write)

Google Chrome läser inte kodningsinformation som deklareras med document.write(). Om du använder denna metod för att deklarera kodningen i iframe-taggar, till exempel, kan tecknen se konstiga ut när ramen återges. I stället för:

frame1.js

document.write("<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">");
      ... annan JavaScrip-kod ...

... rekommenderar vi:

frame1.html

<html>
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
      <script type="text/javascript">
      ... din JavaScript-kod ...
      </script>
      ...

6. '%B1%C1%C3%E5' visas i stället för två kinesiska tecken i Google Chrome

Google Chrome kodar frågeparametrar i webbadresser med procenttecken. Kontrollera att skripten på servern avkodar tecken som har kodats med procenttecken innan några data bearbetas.

Skript och webbprogram

7. Min ActiveX-kontroll laddas inte

Du bör använda en NPAPI-version av plugin-programmet.

ActiveX stöds bara av Internet Explorer (och webbläsare som bygger på Internet Explorer) i Windows. Google Chrome, Mozilla Firefox, Apple Safari och andra stödjer inte ActiveX. Dessa webbläsare använder i stället NPAPI (Netscape Plugin Application Programming Interface).

8. Mitt JavaScript körs inte som det borde

Det finns några olika sätt att visa JavaScript-fel och att avlusa dem i Google Chrome:

  • JavaScript-konsolen: klicka på menyikonen Sida och välj Utvecklare > JavaScript-konsol. Här ser du fel som har uppstått vid körningen av JavaScriptet och kan ange ytterligare JavaScript-kommandon som du vill köra.
  • Felsökning för JavaScript: tillgängligt via menyikonen Sida > Utvecklare > Debug JavaScript. Avlusaren är en kommandotolk där du kan ställa in brytpunkter, spåra bakåt i koden och göra mycket mer. Skriv help i avlusaren om du vill komma igång.

Rendering och webbläsarens beteende

9. Min webbplats ser annorlunda ut i Google Chrome än i Internet Explorer

Google Chrome använder en annan renderingsmotor än Internet Explorer, så sidorna kan se annorlunda ut. Apple Safari använder samma renderingsmotor som Google Chrome (WebKit) och sidorna bör se ut på samma sätt.

  • Om din webbplats inte ser ut som den ska i någon webbläsare bör du kontrollera att HTML- och CSS-koden är giltig genom att testa den på adressen http://validator.w3.org/.
  • Om webbplatsen inte ser ut som den ska i Google Chrome eller Apple Safari kan du rapportera ett fel på adressen webkit.org enligt beskrivningen på sidan http://webkit.org/quality/reporting.html.
  • Om webbplatsen ser ut som den ska i Apple Safari men inte i Google Chrome kan du rapportera ett fel i Google Chrome på adressen http://code.google.com/p/chromium/issues/list.

10. Hur testar jag min webbplats i Google Chrome?

Det finns flera verktyg du kan använda för att testa din webbplats i Google Chrome:

  • Webbinspektör
    Högerklicka på någon komponent på en webbsida och starta webbinspektören. Du ser de element och resurser som är knutna till komponenten som du klickade på, bland annat än hierarkisk vy av dokumentobjektmodellen och JavaScript-konsolen.
  • Aktivitetshanteraren
    Välj menyikonen Sida, sedan Utvecklare > Aktivitetshanteraren (eller tryck på Skift+Esc). I Aktivitetshanteraren visas alla processer som körs i Google Chrome samt vilka resurser de använder (minne, processor och nätverk).
  • Felsökning för JavaScript
    Välj menyikonen Sida, sedan Utvecklare > Felsökning för JavaScript. Då startas en JavaScript-avlusare som kan användas för att ansluta till befintliga processer.

11. Teckensnittsspecifikationer i en extern formatmall har ingen effekt

Kontrollera att alla externa formatmallar skickas med rätt teckenuppsättning och innehållstyp. De bör skickas i formatet text/css eller text/css;charset=X.

Det är bättre att inte ange en teckenuppsättning för en formatmall i HTTP-huvudet. Lägg i stället till deklarationen högst upp (inga föregående tecken, vare sig blanksteg eller radmatningar) i CSS-formatmallen:

@charset "xxx"

Om du inte anger kodningsinformation kanske formatmallen inte tolkas korrekt.

Läs mer om det här ämnet i World Wide Web Consortiums dokumentation på adressen http://www.w3.org/TR/CSS21/syndata.html#charset.

12. Popup-fönstren på min webbplats visas inte i Google Chrome

Standardbeteendet hos Google Chromes är att minimera och sedan visa enbart namnlisten i popup-fönster längst ned till höger i webbläsarens fönster. Användarna kan titta på popup-fönstret genom att dra namnlisten till en mer synlig plats. Detta innebär att popup-fönstren laddas så att funktionen på de webbplatser som är avhängiga av dem inte förstörs. Det förhindrar även att oönskade popup-fönster täcker hela sidan och distraherar användaren.

13. Min webbplats skyddas av SSL och ett utropstecken i stället för ett lås visas för den i Google Chrome

Detta visar att det är något problem med hur SSL används på sidan. Klicka på utropstecknet i Google Chrome så visas mer information om problemet. I många fall beror problemet på att innehållet på sidan är blandat. Det kan till exempel vara så att sidan på den högsta nivån skickas via HTTPS och skyddas med SSL, men att du även har tagit med andra element på sidan (t.ex. bilder, skript eller CSS-kod) via HTTP. Allt material måste skickas via HTTPS om låset ska visas.

14. Programmeringsgränssnittet för HTML5-databaser stöds inte i Google Chrome

Teamet bakom Google Chrome har planer på att stödja programmeringsgränssnittet för HTML5-databaser, liksom de andra programmeringsgränssnitten som WebKit stöder, däribland offlinelagring och arbetstrådar, i en framtida version.

15. Hur anpassar jag utseendet på och funktionen hos genvägar i Google Chrome som pekar till min sida?

Användare av Google Chrome kan skapa en genväg till en valfri webbsida genom att välja Skapa programgenvägar via menyikonen Sida. Standardinställningen är att nya genvägar skapas med rubriken och favoritikonen på sidan till vilken genvägen pekar.

Du kan ange rubriken, beskrivningen och webbadressen för genvägar i Google Chrome som pekar till din sida genom att ange särskilda metataggar i <head>-avsnittet i dokumentet.

Om du vill anpassa: Tagg Exempel
Genvägens rubrik application-name <meta name="application-name" content="Gmail"/>
Beskrivningen (som används om mer utrymme är tillgängligt, till exempel i inställningsrutan) description <meta name="description" content="Googles sätt att se på e-post"/>
Webbadressen som öppnas då genvägen används application-url <meta name="application-url" content="http://www.gmail.com"/>
Genvägens ikon <link rel="icon" href="gmail_32x32.png" sizes="32x32"/>
<link rel="icon" href="gmail_48x48.png" sizes="48x48"/>

Exempel:

<head>
      <meta name="application-name" content="Gmail"/>
      <meta name="description" content="Googles sätt att se på e-post"/>
      <meta name="application-url" content="http://www.gmail.com"/>
      <link rel="icon" href="gmail_32x32.png" sizes="32x32"/>
      <link rel="icon" href="gmail_48x48.png" sizes="48x48"/>
      </head>

Dessa taggar är mycket lika dem som används i Gears Desktop API. Läs dokumentationen till Gears Desktop API om du vill veta mer.

16. Hur kan jag öppna en ny flik i en separat process från en webbsida?

Google Chrome utnyttjar flera processer samtidigt, vilket innebär att flikar kan köras i egna processer, skilda från varandra och från webbläsarens huvudprocess. Nya flikar som öppnas från en webbsida brukar emellertid öppnas i samma process, så att den ursprungliga sidan kan komma åt den nya fliken från JavaScript.

Om du vill att en ny flik ska öppnas i en separat process:

  • Öppna den nya fliken med about:blank som mål.
  • Ge den nyöppnade flikens variabel opener värdet null, så att den inte kan komma åt den ursprungliga sidan.
  • Omdirigera från about:blank till en valfri webbadress på en annan domän, en annan port eller ett annat protokoll än som används på webbsidan som öppnade popup-fönstret. Om sidan som öppnade popup-fönstret finns på adressen http://www.example.com/:
    • skulle en annan domän vara http://www.example.org
    • skulle en annan port vara http://www.example.com:8080
    • skulle ett annat protokoll vara https://www.example.com

Google Chrome tolkar dessa åtgärder som att den nya och gamla sidan bör isoleras från varandra och försöker läsa in den nya sidan i en separat process.

Följande kodutdrag kan användas för att åstadkomma allt detta:

var w = window.open();
      w.opener = null;
      w.document.location = "http://annanwebbplats.se/index.html";

Sökning

17. Om jag går in på en sida i ett intranät visas en sökresultatsida i stället för sidan i intranätet

När en användare skriver ett ord i adressfältet söker Google Chrome efter termen och returnerar resultatet via standardsökmotorn. Samtidigt skickas en HEAD-begäran till http://term för att se om det är en giltig webbplats. Om Google Chrome tar emot ett HTTP/2xx-svar (t.ex. HTTP/200 OK) får användaren en fråga om han eller hon vill besöka webbplatsen i stället. Om användaren väljer att gå vidare till webbplatsen anges den som standardmål för den termen för framtida bruk.

Google Chrome visar även frågan om den tar emot:

  • ett HTTP/401- eller HTTP/407-svar
  • en HTTP/3xx-omdirigering som avslutas på en sida med något av ovanstående svar

Du bör kontrollera att webbservern svarar som den borde på en HEAD-begäran och inte bara på GET-begäranden om sidan.

Exempel: om det finns en webbplats på adressen http://project.intranet.example.com och en användare i detta företagsnätverk skriver project i adressfältet:

  • returnerar Google Chrome sökresultat för termen project
  • kontrollerar Google Chrome samtidigt om http://project är en giltig webbplats. Är det så
  • visas en fråga om användaren vill besöka http://project
  • och om användaren klickar sig vidare till http://project ställs http://project in som mål för all framtida användning av project i adressfältet

Användarna kan åsidosätta standardsökbeteendet genom att skriva project/ eller http://project eller genom att välja adressfältsposten project/ i stället för Sök efter project.

18. Hur kan jag få med min webbplats sökmöjligheter i sökalternativen i Google Chrome?

Om du tillhandahåller ett OSDD-dokument (OpenSearch Description) kan Google Chrome ta med din webbplats i listan över sökmotorer i webbläsaren. Mer information om OpenSearch finns på adressen http://www.opensearch.org.