Misalkan Anda perlu berpindah dari satu halaman ke halaman lainnya. Ada banyak cara di bawah ini. Bisakah Anda menjelaskan alasannya dengan jelas?
<%--Bentuk representasi tautan--%>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/Default2.aspx">HyperLink</asp:HyperLink>
<asp:LinkButton ID="LinkButton1" runat="server" PostBackUrl="~/Default2.aspx">LinkButton</asp:LinkButton>
<%--Untuk alasan estetika, banyak situs web akan menggunakan tombol untuk menggantikan tautan--%>
<asp:Button ID="Button1" runat="server" Text="Button" PostBackUrl="~/Default2.aspx" />
<%--Menggunakan gambar sebagai tautan, ada dua opsi--%>
<asp:ImageButton ID="ImageButton1" runat="server" PostBackUrl="~/Default2.aspx" ImageUrl="~/upup.gif" />
<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl="~/Default2.aspx" ImageUrl="~/upup.gif"></asp:HyperLink>
Jika Anda masih sedikit bingung, saya sarankan Anda memeriksa kode sumbernya setelah mereka menghasilkan html.
<a id="HyperLink1" href="Default2.aspx">HyperLink</a>
<%--Setelah HyperLink diuraikan ke dalam Html, itu sesuai dengan hyperlink sederhana, dan href menunjuk ke halaman yang akan dilompati--%>
<a id="LinkButton1" href="javascript:WebForm_DoPostBackWithOptions(WebForm_PostBackOptions baru("LinkButton1", "", false, "", "Default2.aspx", false, true))">LinkButton< /a>
<%--Meskipun LinkButton1 juga merupakan tag jangkar, sebenarnya ia menggunakan JavaScript untuk melompat--%>
<input type="submit" name="Button1" value="Button" onclick="javascript:WebForm_DoPostBackWithOptions(WebForm_PostBackOptions("Button1", "", false, "", "Default2.aspx" , salah, salah))" id="Tombol1" />
<%--button diurai menjadi elemen input type="submit", dan halaman juga dilompati melalui JavaScript--%>
<input type = "image" name = "ImageButton1" id = "ImageButton1" src = "upup.gif" onclick = "javascript:WebForm_DoPostBackWithOptions(WebForm_PostBackOptions baru("ImageButton1", "", false, "" , "Default2.aspx", salah, salah))" style="border-width:0px;" />
<%--ImageButton diurai menjadi elemen input type="image", dan halaman juga dilompati melalui JavaScript--%>
<a id="HyperLink2" href="Default2.aspx"><img src="upup.gif" style="border-width:0px;" /></a>
<%--Setelah memberikan nilai ke atribut ImageUrl dari HyperLink, setelah menguraikannya ke dalam Html, itu sesuai dengan img yang "dipotong" di hyperlink, tetapi href masih menunjuk ke halaman yang akan dilompati--%>
Apa gunanya mengetahui hal ini?
Ini memiliki banyak kegunaan, tetapi hari ini kita hanya berbicara tentang SEO.
Dengan teknologi mesin pencari saat ini, JavaScript (termasuk AJAX tentunya), elemen formulir (seperti input), Flash dan Gambar tidak dapat (atau sulit) dibaca. "Laba-laba" cenderung membaca teks berformat html sederhana. Jadi, dari perspektif SEO:
1. Jangan gunakan JavaScript atau formulir untuk tautan lompat halaman. <a></a> biasa juga dapat melakukan fungsi yang sama. Secara umum, navigasi apa pun yang tidak dapat diakses melalui pengidentifikasi jangkar standar <a></a> tidak akan diambil oleh laba-laba. Jika kita awalnya menggunakan elemen sisi klien, akan lebih mudah bagi kita untuk memperhatikan hal ini; namun saat menggunakan kontrol sisi server yang dienkapsulasi, kita mungkin ceroboh.
2. Perhatikan bahwa tidak ada konten teks di UpdatePanel. Kita dapat melakukan tes sederhana:
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:Manajer Skrip>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<Templat Konten>
<asp:Label runat="server" ID="lbl" ></asp:Label>
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
</Templat Konten>
</asp:Panel Pembaruan>
void yang dilindungi Button1_Click(pengirim objek, EventArgs e)
{
this.lbl.Text = "Saya dibuat oleh UpdatePanel, jadi Anda tidak dapat melihat saya!";
}
Bagian kode sumber setelah diurai ke dalam Html:
<div id="Panel Pembaruan1">
<span id="lbl"></span>
<input type="kirim" name="Tombol1" value="Tombol" id="Kirim1" />
</div>
Hal ini mudah dimengerti, karena UpdatePanel juga menghasilkan konten halaman melalui fungsi JavaScript halaman tersebut. Melihat kode sumbernya, kita dapat melihat fungsi JavaScript yang relevan, tetapi tidak melihat konten yang dihasilkan oleh fungsi tersebut. Sedangkan untuk spider mesin pencari, mereka hanya melihat kode sumbernya.
3. Saat kita perlu menggunakan halaman pop-up, pendekatan yang biasa dilakukan adalah:
<a href="#" onclick="window.open('popup.html','common','height=600,weight=800');">popup umum</a>
Sesuai dengan apa yang kami jelaskan di atas, cara penulisan seperti ini tentu merugikan SEO. Jadi kita harus menggunakan kode berikut, yang memastikan efek jendela pop-up dan ramah SEO. Dan meskipun browser pelanggan tidak mendukung atau menonaktifkan JavaScript, laman masih dapat melompat dengan lancar.
<a href="popup.html" onclick="window.open(this.href,'seo','height=600,weight=800');return false;" target="_blank">seo popup</a >
<%--Catatan: Pernyataan return false di sini tidak dapat dihilangkan. --%>
4. Ketika kita ingin menggunakan font khusus (seringkali judul kolom dan sejenisnya), kita sering menggunakan gambar karakter Cina. Ini juga merepotkan, karena sebagai judul, seringkali isinya merupakan kata kunci yang sangat penting. Salah satu solusi yang mungkin adalah sIFR, tapi saya tidak terlalu paham dengan ini; setelah mencari secara online, sepertinya ini tidak berlaku untuk karakter Cina.
Untuk gambar, metode SEO yang umum kami gunakan adalah dengan menunjukkan judul dan alt, seperti
<img alt="ASP.NET Search Engine Optimization" title="Beberapa teknik SEO yang perlu diperhatikan ketika mengembangkan website menggunakan teknologi ASP.NET" src="seo.gif" />
Namun, ini juga merupakan "elemen halaman yang tidak terlihat", dan efek spesifiknya sulit diukur secara akurat. Tapi ada sesuatu yang lebih baik daripada tidak sama sekali!
5. Beberapa catatan lainnya:
5.1 Gabungkan semantik tag html dengan css. Berbeda dengan "span" dan "div", "h1" berarti judul, "b" berarti penekanan, "ul" dan "li" berarti daftar... Tag semantik ini Dapat memberikan pencarian instruksi mesin yang lebih jelas;
5.3 Tempatkan konten penting di bagian atas halaman html (mengacu pada kode sumber, bukan hasil yang ditampilkan browser)
5.5 Tempatkan sebagian besar JavaScript di bagian bawah halaman atau di file js terpisah;
5.2 Sebaiknya tidak menggunakan tata letak bingkai;
5.3 VIEWSTATE dalam jumlah besar dapat menyebabkan gangguan pada "Spider";
5.5 Perlu diingat: Dengan teknologi mesin pencari saat ini, JavaScript (termasuk AJAX, tentunya), elemen formulir (seperti input), Flash dan Gambar tidak dapat (atau sulit) dibaca.