我試圖做的目標是自動化我的工作流程。它收集該頁面的具體細節,同時生成一個goo.gl縮短的網址,然後將其封裝到警報中以便於處理。當我將JavaScript放入書籤時,它會在嘗試執行下面記錄的錯誤時掛起。但是,當我將它直接放入控制檯時,它的工作原理如下。
不確定解決方案會在這裏,有什麼想法?
Uncaught TypeError: Cannot read property 'setApiKey' of undefined
從javascript書籤掛起的jQuery + ajax調用
測試網址爲腳本:
使用實時代碼:
javascript: jQuery(document).ready(function($) {
/* Description Area */
var title = $(".job_header_title").text();
var company = $("#masthead > div > div.row > div > div.row.job-highlight > div > div:nth-child(1) > div.col-lg-4.col-md-4.col-sm-4.col-xs-12 > div > p:nth-child(3)").text();
var type = $("#aboutjob > div > table > tbody > tr:nth-child(2) > td:nth-child(2)").text();
var role = $("#aboutjob > div > div:nth-child(4) > div.panel-body").text();
var job = (company + " company is looking for a " + title + "/" + type + "\n\n" + role);
/* URL AREA */
var user = "DanielW1";
/* var apiKey = "AIzaSyCE2BK7kOhAKLiRd1BIw9rGZqyM6A58Y94"; */
var hireteammate = "https://hireteammate.com/invite/join/" + user + "?callback=";
var callbackUrl = encodeURIComponent(window.location.href);
var joblink = (hireteammate + callbackUrl);
var longurl = joblink;
$.getScript("https://apis.google.com/js/client.js", function(textStatus, jqxhr) {
/* console.log(textStatus +" "+ jqxhr.status + " Load was performed.");*/ /* Success */
gapi.client.setApiKey("AIzaSyCE2BK7kOhAKLiRd1BIw9rGZqyM6A58Y94");
gapi.client.load('urlshortener', 'v1', function() {
var request = gapi.client.urlshortener.url.insert({
'resource': {
'longUrl': longurl
}
});
var resp = request.execute(function(resp) {
if (resp.error) {
console.log('Error. ' + resp.error.message);
} else {
alert(job + "\n\n" + resp.id);
}
});
});
});
});
我還沒有測試過我提出的解決方案,因爲您已經正確地說明了解決方案「似乎正確」,根據我所引用的文檔來判斷:) – Filip