当前页面的URL包含一个哈希:test123.com/go/#1/140/-220
我只想从网址中抓取哈希的特定部分:140和-220,并将它们附加到iframe源的特定部分。
iframe源= test123.com/goiframe&value1=140&value2=-220
其中value1 =网址中的140,value2 =网址中的-220。
location.hash是否可能?
答案 0 :(得分:1)
当然,响应只是一个字符串,因此可以解析它并构造新的URL。下面我分裂上的散列/和移除第一元件,因为这是基散列。然后,只需构造URL。
请注意:我用文字在这里。如果您不想这样做,可以手动构造字符串。
例如:
// Manually update hash for test.
window.location.hash = '#1/140/-220';
console.log('Original Hash: ' , window.location.hash);
// Get those entries but remove the inital has part.
let entries = window.location.hash.split('/').slice(1);
console.log('Entries parsed: ', entries);
// Create the new url now.
let newURL = 'test123.com/goiframe';
for(let i = 0; i < entries.length; i++){
newURL += `&value${i + 1}=${entries[i]}`;
}
console.log('New URL: ', newURL);
编辑: 基本上,我只是摆脱了循环,说了lat和lng。根据需要更新。
// Manually update hash for test.
window.location.hash = '#1/140/-220';
console.log('Original Hash: ' , window.location.hash);
// Get those entries but remove the inital has part.
let entries = window.location.hash.split('/').slice(1);
console.log('Entries parsed: ', entries);
// Create the new url now.
let newURL = `test123.com/goiframe&lat=${entries[0]}&lng=${entries[1]}`;
console.log('New URL: ', newURL);