我对JQuery和ajax有点新鲜,所以如果这是一个新手的问题,我道歉.
我正在尝试使用本地文件中的ajax来访问Web(例如,获取文本文件).
我没有使用IIS或任何东西,我的硬盘上的简单文件(我需要它保持这种方式).
在IE8和Chrome上进行了检查(版本11.0.696.60).
这里有一些javascript来说明:
// use ajax to load from the web
$("#webText").click(function(){
$.get("http://www.w3schools.com/jquery/demo_ajax_load.txt", function(result){
alert(result);
});
Run Code Online (Sandbox Code Playgroud)
此代码试图从Web加载文本文件 - 操作在IE和chrome上都失败(无法获得成功功能).
Chrome在错误控制台中通知"XmlHttpRequest无法加载 _http://www.w3schools.com/jquery/demo_ajax_load.txt:Access-Control-Allow-Origin不允许使用Origin null"
// use ajax to load from a local file
$("#localText").click(function(){
$.get("demo_ajax_load.txt", function(result){
alert(result);
});
Run Code Online (Sandbox Code Playgroud)
此代码尝试从本地文本文件加载.
IE:操作成功.
Chrome:失败并出现与上述相同的错误.
此时我认为无法从本地文件与Web通信,但后来我遇到了类似的问题:XmlHttpRequest错误:Access-Control-Allow-Origin不允许使用null
使用那里给出的例子,我试过:
// use ajax to load json object from the web
$("#webJSON").click(function(){
var url = 'http://www.panoramio.com/wapi/data/get_photos?v=1&key=dummykey&tag=test&offset=0&length=20&minx=-30&miny=0&maxx=0&maxy=150';
$.get(url, function(json) {
alert(json.photos[1].photoUrl);
}, "jsonp");
});
Run Code Online (Sandbox Code Playgroud)
这段代码适用于两种浏览器.显然,可以从本地文件与Web服务进行通信.
有任何想法吗?
顺便说一句 - 我对IE的这方面更感兴趣,Chrome和其他浏览器不是一个问题.
谢谢.
我正在编写一个桌面应用程序,通过使用从本地文件运行HTML\javascript的嵌入式浏览器与facebook进行交互.
我能够使用登录对话框来检索令牌(使用桌面应用程序的facebook文档中描述的方法),但我仍然无法调用基本的SDK函数,例如FB.init()和FB.getLoginStatus().
执行FB.init()时:
FB.init({
appId: '120260327220',
status: true, // check login status
oauth: true // enable OAuth 2.0
});
Run Code Online (Sandbox Code Playgroud)
我得到HTTP响应(通过HTTP嗅探器):
<span>Given URL is not allowed by the Application configuration.: One or more of the given URLs is not allowed by the Application configuration. It must match one of the Connect or Canvas URLs or domain must be the same as or a subdomain of one of the Application's base domains.</span>
Run Code Online (Sandbox Code Playgroud)
并且在执行FB.getLoginStatus()时 …
我有一小部分用于打开两个或更多标签的JavaScript.这在FF和IE中工作正常,但chrome在新窗口中打开第二个而不是tab.它不依赖于url,因为我用两个相同的url尝试了它.首先在选项卡中打开,第二个在新窗口中打开.
这是我的代码片段:
for(var i=0 ; i<sites.length ;i++)
{
window.open(sites[i].Url);
}
Run Code Online (Sandbox Code Playgroud) 我想在Intellij AWS插件上设置mu Amazon帐户.我希望能够访问S3和EC2.我安装了Intellij AWS插件,但我无法弄清楚如何使用我的Amazon凭据登录.
正如你在这里看到的(下图),我可以选择一个帐户,但我无法弄清楚在哪里设置它.
截图:
我正在开发一台带有IE8浏览器的Win7机器(同样的事情也出现在IE9上).
我创建了一个嵌入在本机窗口中的IWebBrowser2对象的应用程序.
在该浏览器对象中,我执行javascipt代码:
var txt = "Browser Name: " + navigator.appName + "\n";
txt += "Browser Version: " + navigator.appVersion + "\n";
alert(txt);
Run Code Online (Sandbox Code Playgroud)
我收到以下提醒:
这证实了我之前的担忧 - 即使我的机器上安装了IE8\IE9 - IWebBrowser2对象的行为就好像它是IE7(包括所有讨厌的HTML\CSS行为).
有人知道为什么吗?或更好 - 如果有可能将浏览器对象嵌入IE8\IE9(用于分发 - 所以它应该是合法的)
谢谢,
目前的情况
我有一个桌面应用程序(C++ Win32),我希望匿名跟踪用户的使用情况分析(操作,点击,使用时间等)
.跟踪是通过指定的Web服务完成的,用于特定的操作(安装,卸载,点击) )所有内容都由我的团队编写并存储在我们的数据库中.
需求
现在我们用各种数据添加更多使用类型和事件,因此我们需要定义服务.
我希望为所有使用类型提供单一的通用服务,而不是为每个操作提供大量不同的Web服务,这些服务能够接收不同的数据类型.
例如:
问题
我正在寻找一种优雅便捷的方式来存储这种不同的数据,以后我可以轻松地查询它.
我能想到的替代方案:
将每种使用类型的不同数据存储为JSON/XML对象的一个字段,但是为这些字段提取数据和编写查询将非常困难
为每条记录提供额外的N个数据字段,但这似乎非常浪费.
对这种模型有什么想法吗?也许像谷歌分析?请指教...
技术: DB是在phpMyAdmin下运行的MySQL.
免责声明: 有一个类似的帖子,它引起我的注意服务,如DeskMetrics和Tracker鸟,或尝试将谷歌分析嵌入到C++本机应用程序,但我宁愿自己的服务,更好地了解如何设计这个有点模型.
谢谢!
mysql database analytics desktop-application database-normalization
我正在尝试为Google Chrome创建QA自动化,以便模拟点击并在标签按钮上接收点击事件.
我正在使用IAccessible接口和AccessibleChildren API来获取完整的可访问元素树.
使用AccExplorer 2.0查看树时 - 它看起来很棒(见最后的图片).
但是我的程序只显示了一个部分树,名称与我在AccExplorer上看到的名称不匹配.
我在跑:
任何想法为什么我无法查看完整的树?
谢谢
这是我的程序源码(C++):( 类似于MSDN示例)
int _tmain(int argc, _TCHAR* argv[])
{
int i=0;
HWND hWndChrome = NULL;
hWndChrome = (HWND)0x000702c0;
wcout << L"\n\nChrome_WidgetWin_1 = "<< hex << hWndChrome << "\n--------------------------";
CComPtr<IAccessible> pAccMain;
::AccessibleObjectFromWindow(hWndChrome, OBJID_CLIENT, IID_IAccessible, (void**)(&pAccMain));
WalkTreeWithAccessibleChildren(pAccMain, 0);
_getch();
return 0;
}
HRESULT WalkTreeWithAccessibleChildren(__in CComPtr<IAccessible> pAcc, __in int depth)
{
long childCount = 0;
long returnCount = 0;
HRESULT hr = pAcc->get_accChildCount(&childCount); …
Run Code Online (Sandbox Code Playgroud) 我正在使用YQL来使用javascript(作为json)检索RSS提要,例如我使用以下查询:
select * from rss where url = "http://feeds2.feedburner.com/ajaxian"
Run Code Online (Sandbox Code Playgroud)
响应包含已经解析为json的feed项,到目前为止一切都很酷.
现在,我还想获得整个提要的标题(不是特定项目的标题) - 但它不是结果的一部分(即使原始XML提要包含它).
有可能查询原始XML本身.例如:
select channel.title from xml where url = "http://feeds2.feedburner.com/ajaxian"
Run Code Online (Sandbox Code Playgroud)
它确实返回该特定RSS的订阅源标题,但该查询仅对RSS 2.0格式的订阅源有效,该订阅源将其存储在rss\channel\title下.
那么在feed\title下存储标题的原子提要怎么样?
其他格式怎么样?
我的问题是 - 有没有通过YQL请求Feed标题的通用方法?也许某种程度上与饲料本身?
谢谢,
我在IE8上使用javascript扩展(AKA window.external)(可能是任何IE版本)来暴露某些功能.
我试图在window.external对象的函数上调用apply函数,它本身嵌入在每个JS函数中(应该是,根据这里),但浏览器不断抛出apply函数不存在的异常对于那个功能.
例如,此代码有效:
function onDataReceived(url, success, status, data, errorMessage) {
alert(onDataReceived);
}
function innerTest() {
alert(arguments[0] + ", " + arguments[1]);
}
function outerTest() {
innerTest.apply(null, arguments);
}
outerTest("hello", "world");
// alerts "hello, world"
Run Code Online (Sandbox Code Playgroud)
但是此代码抛出异常:
function outerTest() {
window.external.innerTest.apply(null, arguments); // <-- exception
}
outerTest("hello", "world");
Run Code Online (Sandbox Code Playgroud)
底线是 - 我需要将未知数量的参数传递给外部函数,到目前为止我已达到死胡同......
有任何想法吗?
编辑:
我接受了Mike Samuel的回答,因为(据我所知)apply
该window.external
对象中不存在该函数,因为它不是本机javascript对象.
迈克建议的"最坏情况"是我最终做的事情.
谢谢
javascript ×3
ajax ×1
amazon-ec2 ×1
analytics ×1
c++ ×1
database ×1
desktop ×1
external ×1
facebook ×1
iaccessible ×1
iwebbrowser2 ×1
jquery ×1
mysql ×1
oauth ×1
rss ×1
winapi ×1
window.open ×1
windows ×1
yql ×1