[英]How to handle page navigation and incoming links on entirely ajax site?
我正在創建一個完全ajax的網站,問題之一是您無法提供指向直接頁面的鏈接。 我這樣做是為了在您每次單擊ajax鏈接時都將頁面名稱附加到url中,但是現在我需要在我的主文件中運行一個php腳本,該腳本每次您單擊加載頁面時都會運行。 這將檢查是否設置了任何get變量,並將您重定向到正確的頁面。 例如,如果我為您提供此鏈接http://techxpertschico/techxperts/repair
那么它應該能夠將適當的內容加載到頁面中,而不是將您帶到主頁。 我懷疑這看起來類似於下面的代碼。 我只是不知道如何在isset請求上進行ajax請求。 我需要幫助弄清楚要添加到我的PHP腳本中的內容。
<?php
if(isset($_GET['notsurewhatgoeshere'])) {
//load the appropriate page using jquery
}
?>
這是ajax請求的代碼
$('.ajaxAnchor').on('click', function (event){
event.preventDefault();
$('a .top').css({'background' : 'transparent'});
$('a .top').children().css({'background' : 'transparent'});
$(this).children().css({'background' : '#EEEEEE'});
var url = $(this).attr('href');
var shortened = url.substring(0,url.length - 5);
History.pushState({state:1}, shortened, shortened);
$.get(url, function(data) {
$('section.center').html(data);
});
});
如果您需要查看其他代碼,請告訴我,我將添加它。 謝謝!
如果將此.htaccess文件放置在網站的根目錄中,並且服務器配置正確,它將使所有URL鏈接都位於index.php上。 在這里,您可以檢查請求的URL並確定要去的地方。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
在Index.php中,您可以檢查$ _SERVER ['REQUEST_URI']元素以分解所請求的URL。
這有些微不足道,不能100%回答您的問題,但是您想做的事情的范圍比一個答案要大。
不太了解您的問題,但是無論如何,可以通過某些事件,頁面onload(即按鈕onclick();)來觸發javascript函數。 即點擊我。 在myFunction(){中,您可以編寫Ajax函數來執行發布/獲取。 在javascript函數內部,您可以使用document.location.href ='您的新http://'重新加載頁面;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.