我的目標是:我有一個表單,它位於第1-4部分,當用戶單擊「下一步」按鈕時我希望將內容製作成動畫,然後是第2部分幻燈片等,直到表格完成。棘手的部分是我想嘗試在另一個子文件夾中使用不同的PHP頁面來插入其他3個部分。這也會改變用戶看到的URL子文件夾。將動態內容插入到php頁面並更改網址
工作示例實際上是WordPress。當您點擊多部分表單時,您將看到內容和URL的行爲如我所描述的。
我做了一些挖掘,看起來他們在內容上使用了React.js,但我無法真正找到任何有關如何使用React.js執行此操作的文檔,所以它讓我覺得它可能是自定義的Ajax/jQuery或什麼。
我的文件夾的樹 -
- 主
- 子文件夾-1
- 的index.php
- 子文件夾-2
- 的index.php
- 子文件夾-1
等。我能想到的唯一的事情會使用jQuery:
$(document).ready(function() {
$('#form-container').on('click', '.insert', function() {
var directory = $(this).attr('name');
$('#form-container').load('../' + directory);
return false;
});
});
我添加「下一步」按鈕之類的「插入」,並給它一個name="Subfolder-2"
$('#form-container').load('../Subfolder-2);'
實際上將加載內容到沒有頁面刷新的div,但它不會更改URL中的子文件夾。
我在錯誤的軌道上嗎?也許我只是沒有尋找正確的東西?
我想你需要使用'window.history.pushState'來添加一個歷史記錄條目(並更改URL)。然後你需要使用'window.onpopstate'來處理用戶點擊瀏覽器的後退按鈕。看[這個答案](http://stackoverflow.com/a/3354511/859640)。 –
謝謝你,當我今晚回到家時,我會嘗試你的建議。這是有道理的。我從來沒有想過使用pushState和onpopstate。 – Matthew
嗨,@JohnS,我想再次表示感謝您昨天的評論。在對'history.pushState'和'popstate'進行了相當多的研究和測試之後,我已經得到了這個功能的描述。如果您發佈您的建議作爲答案,我會接受它。再次感謝!你很有幫助 – Matthew