1

我有一段代码可以让用户从linkedin中注销,但它不起作用:(

任何帮助将不胜感激。


注销代码


<html>
<head>
<script type="text/javascript" src="http://platform.linkedin.com/in.js">
  api_key: mykey
  authorize: true
</script>
<script type="text/javascript">

try {
    IN.User.logout();
} catch (err) {
    console.log(err);
}
setTimeout("goToHome()", 10000);

function goToHome() {
    location.href="index.php";
}
</script>
</head>
</html>

控制台日志


TypeError
arguments: Array[2]
get message: function () { [native code] }
get stack: function () { [native code] }
set message: function () { [native code] }
set stack: function () { [native code] }
type: "non_object_property_call"
__proto__: Error

最好的问候,帕万

4

1 回答 1

3

看起来您正试图在 LinkedIn JavaScript 平台完全加载之前调用 IN.User.logout()。只有在确定库已加载后,您才应通过平台引导部分中的 onLoad 值运行代码:

<script type="text/javascript" src="http://platform.linkedin.com/in.js">
  api_key: mykey
  authorize: true
  onLoad: onLoad
</script>

<script type="text/javascript">
function onLoad() {
  try {
    IN.User.logout();
  } catch (err) {
    console.log(err);
  }
  setTimeout("goToHome()", 10000);
}

function goToHome() {
  location.href="index.php";
}
</script>

或者,使用事件回调之一:

<script type="text/javascript" src="http://platform.linkedin.com/in.js">
  api_key: mykey
  authorize: true
</script>

<script type="text/javascript">
IN.Event.onOnce(IN, 'systemReady', function() {
  try {
    IN.User.logout();
  } catch (err) {
    console.log(err);
  }
  setTimeout("goToHome()", 10000);
});

function goToHome() {
  location.href="index.php";
}
</script>
于 2012-09-19T13:38:28.440 回答