我在访问window对象的location属性时遇到问题,我需要通过JavaScript / jQuery将用户重定向到另一个页面。我知道你通常应该使用.htaccess文件来执行此操作,但我实际上是在编写一个nw.js应用程序,所以我没有服务器。
以下是一个示例源代码:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<script src="http://code.jquery.com/jquery-3.2.1.js">
</script>
<script>
$(function() {
$("#testbutton").click(function() {
$("#testbutton).before($(window).attr("location"));
});
});
</script>
</head>
<body>
<button type="button" id="testbutton">Click me</button>
</body>
</html>
如果有效,则应该获取location属性的值,并在单击按钮时将其插入按钮之前。
实际上,它没有做任何事情。我还尝试将location属性的值赋给变量,或者用普通的JavaScript(我打算避免)写这个,但是没有改变没有任何反应的事实。
是否可以通过jquery访问window对象的location属性?如果有可能,我的错误是什么?
我想在更改之前首先打印该值,因为我喜欢逐步开发项目。我知道这段代码不会改变location属性,但我想知道为什么它甚至没有得到这个值?
答案 0 :(得分:1)
您不需要jQuery ....只需直接访问location.href
$(function() {
$("#testbutton").click(function() {
$("#testbutton").before(location.href);
});
});
<script src="//code.jquery.com/jquery-3.2.1.js"></script>
<button type="button" id="testbutton">Click me</button>
答案 1 :(得分:1)
窗口对象是一个全局对象,有许多属性可以读取和编辑,其中一个属性是位置对象,它不是一个文本,它是一个保存有关当前位置和网址,但您可以使用 location.href 访问当前网址,然后您可以在任意位置插入此文字,请看下面的示例
@CacheEvict
&#13;
$(function() {
$('#testbutton').click(function() {
var currentUrl = window.location.href;
$('#testbutton').before(currentUrl+'<br>');
});
});
&#13;