jQuery有一个attr()方法可以检索给定HTML属性的值.例如:
var foo = document.getElementById("foo");
$(foo).attr("id");
Run Code Online (Sandbox Code Playgroud)
但是,在性能方面,这不是最佳的,因为必须创建jQuery对象才能调用该attr()方法.这表现得更好:foo.id.
所以,理想情况下我们希望避免使用attr().但是,我们可以这样做(对于任何属性)?我相信foo.id并且foo.value是"安全的"(跨浏览器),但我记得有问题foo.href.
以下是我希望能够"直接"检索的各种属性的列表:
对于任何元素:foo.id,foo.name
用于锚定:foo.href,foo.target,foo.rel
对于图像,对象,内置页框:foo.src,foo.width,foo.height
对于表单元素:foo.checked,foo.selected,foo.disabled,foo.readonly,foo.type,foo.value,foo.action
所以问题是:上述表达式是否跨浏览器?我可以安全地使用它们吗?
检查此问题的文章的链接也很不错.
编辑(基于答案):粗体表达式使用不安全!
从Java查询Active Directory的最佳方法是什么?
现在我知道.NET内置了特殊的方法来完成这类工作.但是在Java中,通过启动进程/命令行调用Powershell脚本是一种很好的方法吗?
此外,为什么在Java需要访问Windows WMI数据的时候决定从Java调用C#?是否有理由从Java调用的命令行运行类似pstools(可以在远程计算机上启动进程/命令)这样的东西?
谢谢
我正试图让下拉菜单起作用.它包含一个带有DIV的LI,它在LI悬停时出现.我希望在孩子面前绘制父级,以便我可以创建具有重叠边框的选项卡式效果.我无法让孩子被吸引到父母身后.
以下代码具有相同的问题:
<div id="test_1">
Test 1
<div id="test_2">
Test 2
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
和CSS
#test_1 {
border:1px solid green;
width:200px;
height:200px;
background-color:#fff;
position:relative;
z-index:999;
}
#test_2{
border:1px solid red;
width:200px;
height:200px;
background-color:#fff;
position:relative;
top:-10px;
left:-10px;
z-index:900;
}
Run Code Online (Sandbox Code Playgroud)
上面的代码将在test_1的FRONT中绘制test_2.我想在test_1之后绘制test_2.我怎么能这样做呢?谢谢你的帮助.
我有以下文件.
foo.h(C++头文件)
foo.mm(C++文件)
test_viewcontroller.h(目标c头文件)
test_viewcontroller.m(目标c文件)
我已经在foo.h中声明了一个方法donothing()并在foo.mm中定义它.让我们说它是
双重承诺(双倍){返回; }
现在,我尝试在test_viewcontroller.m中调用此函数
double var = donothing(somevar);
我在test_viewcontroller.o中获得链接器错误,其中显示"找不到符号"_donothing().
collect2:ld返回1退出状态
任何人都可以指出我有什么问题吗?
让我准确一点:
#ifdef __cplusplus
extern "C"
{
char UTMLetterDesignator(double Lat);
NSString * LLtoUTM(double Lat,double Long,double UTMNorthing, double UTMEasting);
double test(double a);
}
#endif
Run Code Online (Sandbox Code Playgroud)
@Carl
我已经包含了我的代码示例.我说我需要在ifdef中只包装test()方法.我不明白它可以有什么区别.你能解释一下吗?
我在C#中遇到了UdpClient问题.我通过互联网在两个客户端之间传输音频.
在我的麦克风上,采样率为16khz,我发送带有音频的UDP数据包,每个数据包6400字节.这些从来没有通过,除了最后的数据包,自从我关闭录音以来通常大约1200-3400的东西.当我将采样率降低到8khz时,我发送3200字节有效载荷的数据包.由于某些原因,这些总是能够通过.
所以基本上3200以上的任何东西都会变得拙劣(没有测试过确切的数字但是......)为什么这个呢?我想也许UdpClient内部缓冲区太小或什么?由于我流音频数据包被频繁发送.
接收:
private void audioReceive(IAsyncResult asyn)
{
try
{
byte[] temp = audioSock.EndReceive(asyn, ref this.serverEP);
this.waveProvider.AddSamples(temp, 0, temp.Length);
this.textbox_display.Text = this.textbox_display.Text + " got bytes: " + temp.Length;
audioSock.BeginReceive(new AsyncCallback(audioReceive), null);
}
catch (Exception ez)
{
MessageBox.Show("audioReceive: " + this.textbox_nick.Text + " " +ez.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
我找不到任何明显的错误.(该函数的asyn对象是null btw,我不需要使用stateobject,但这不应该与此相关)
我知道UDP不可靠,但考虑到每个3200大小的数据包都通过了,没有6400大小的气味给我带来腥味,特别是最大大小是64kb?
有任何想法吗?
我有一个看起来像这样的数据库行.
ID (int): 123
Name (string): SomeName
Data (string): <data><foo>one</foo></bar>two</bar></data>
Run Code Online (Sandbox Code Playgroud)
我需要以下列方式将此数据格式化为XML.
<row>
<id>123</id>
<name>SomeName</name>
<data>
<foo>one</foo>
<bar>two</bar>
</data>
<row>
Run Code Online (Sandbox Code Playgroud)
我目前正在使用SimpleXML来尝试构建它,但我不确定如何将现有的XML插入到我正在尝试构建的新XML文档中.
如果PHP附带其他标准XML构建器,我也愿意使用它们. 字符串连接不是可接受的答案.
编辑:看起来好像SimpleXML不会做我需要的.我想在这一点上,我需要其他XML解析器的建议.
我在WPF 4/C#工作.我有两个自定义类:
public class c1 {
public string prop1 { get; set; }
public c1() {
prop1 = "world";
}
}
public class c2 {
public string prop1 { get; set; }
public c1 obj1 = new c1();
public c2() {
prop1 = "hello";
}
}
Run Code Online (Sandbox Code Playgroud)
在XAML中,我想绑定到这些类的属性.这是我有的:
<Window.Resources>
<my:c2 x:Key="c2"/>
</Window.Resources>
<StackPanel>
<TextBlock DataContext="{DynamicResource c2}" Text="{Binding prop1}"/>
<TextBlock DataContext="{DynamicResource c2}" Text="{Binding obj1.prop1}"/>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)
(这里<my:c2 ../>实例化c2类.)第一个TextBlock绑定有效.第二个没有.为什么我不能绑定到obj1上的属性?我似乎只能绑定到直接类的属性.我想能够绑定到其他东西,如属于直接类的数组中的元素或子类的属性,如上所示.我错过了什么?如果我使用get/set将obj1.prop1包装在immediate类的另一个属性中,它就可以工作.但我不想这样做,特别是如果我开始使用数组,我不想将每个元素包装成一个单独的属性!
我试图在链中创建多个窗口:窗口1是窗口2的父窗口,窗口2是窗口3的父窗口等.当我关闭一个窗口时,我希望它的所有子窗口也关闭.目前,如果我关闭顶级窗口,所有其他窗口关闭,如希望,但关闭,例如,窗口2,只关闭窗口2,而不是窗口3,等等.我应该怎么做?谢谢你的帮助!
main_window.cpp
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
QPushButton* button = new QPushButton("Open 1", this);
connect(button, SIGNAL(clicked()), this, SLOT(on_button_clicked()));
}
void MainWindow::on_button_clicked() {
window1 *w = new window1(this);
w->show();
}
Run Code Online (Sandbox Code Playgroud)
window1.cpp
window1::window1(QWidget *parent) : QWidget(parent)
{
this->setWindowFlags(Qt::Window); // in order to have a free-standing window
QPushButton* button = new QPushButton("Open 2", this);
connect(button, SIGNAL(clicked()), this, SLOT(on_button_clicked()));
}
void window1::on_button_clicked() {
window2 *w = new window2(this);
w->show();
}
Run Code Online (Sandbox Code Playgroud)
window2.cpp
window2::window2(QWidget *parent) : QWidget(parent)
{
this->setWindowFlags(Qt::Window);
QLabel* label = new QLabel("Window 2", this); …Run Code Online (Sandbox Code Playgroud) 我在映射这些数据时遇到问题
1 35
1 30
1 20
2 10
3 40
3 25
3 15
Run Code Online (Sandbox Code Playgroud)
我尝试使用HashMap,但它只会映射到此数据的最后一次出现.