小编Ton*_*Nam的帖子

使用javascript转义iframe

我知道如何逃避iframe.我有一个链接:

<a id="aaa" href="http://localhost/projectManagement/users" target="_parent" >Sign up</a>
Run Code Online (Sandbox Code Playgroud)

通过单击该链接,我将转义iframe

问题是我想在点击按钮而不是链接时转义iframe.

我知道如何通过单击按钮来执行JavaScript,所以我一直在使用javascriopt执行该链接

我试过的东西:

html :(它在iframe内)

<button onClick="tempEvent();" style="width: 500px; height: 50px; margin-top: -15px; font-size: 20px;">
      <b>
          click me              
       </b>
</button>
<div style="height: 15px;">
</div>
<a id="aaa" href="http://localhost/projectManagement/users" target="_parent" >Sign up</a>
Run Code Online (Sandbox Code Playgroud)

JavaScript的

<script>
    function tempEvent()
    {

        clickLink(document.getElementById('aaa'));  // this technique does not work on firefox!
        fireEvent(document.getElementById("aaa"),'click'); // this technique does not work in firefox eather.

        document.getElementById("aaa").onclick(); 
    }

    function clickLink(link) {
        if (document.createEvent) {
            var event = document.createEvent("MouseEvents");
            event.initMouseEvent("click", true, true, window,
                0, 0, …
Run Code Online (Sandbox Code Playgroud)

html javascript iframe

3
推荐指数
1
解决办法
6503
查看次数

如何调用需要Class <T>对象作为参数的方法?

我有一个类,我需要构造函数来初始化变量数组.我在互联网上研究并堆栈溢出但现在我仍然坚持如何调用该方法.例如,我怎么能在我的例子中调用method1?

public class SomeClass<T>{

   public T[] array;

   //Constructor
   public SomeClass()
   {
        Method1(T, 5); //?  error
        Method1(5); //?   error
        Method1(new T().GetType(), 5); //? error
        // HOW CAN I CALL THAT METHOD?

        array = (T[])(new Object[5]); // this gives an error too
   }

   private void Method1(Class<T> type, int size)
   {
       array = (T[])Array.newInstance(type, size);
   }
}
Run Code Online (Sandbox Code Playgroud)

java generics casting

3
推荐指数
1
解决办法
139
查看次数

特定递归函数的增长顺序

以下功能的增长顺序是什么?

    static int counter = 0;

    static void Example(int n)
    {
        if (n == 1) return;

        for (int i = 0; i < n; i++)
        {
            counter++;
        }

        Example(n / 2);
    }
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我做了以下工作:

我首先摆脱内部for循环,以便最终得到:

    static void Example(int n)
    {
        if (n == 1) return;            

        counter++;

        Example(n / 2);
    }
Run Code Online (Sandbox Code Playgroud)

通过分析,我能够告诉该方法的增长顺序是n的对数基数2.

所以我认为最后的答案将是log base 2次.我怎么能搞清楚?

c# math recursion big-o

3
推荐指数
1
解决办法
2542
查看次数

INotifyPropertyChanged更新ontextchange

我的wpf应用程序中有以下绑定

XAML:

   <TextBox Text="{Binding Amount, StringFormat=c}" Name="txtAmount"  />
Run Code Online (Sandbox Code Playgroud)

c#(代码背后):

public partial class MainWindow : Window, INotifyPropertyChanged
{
    public MainWindow()
    {
        InitializeComponent();

        // needed to create the binding  
        this.DataContext = this;
    }

    private decimal _Amount;

    public decimal Amount
    {
        get {
            return _Amount;
        }
        set{
            _Amount= value;
            OnPropertyChanged("Amount");             
        }
    }


    public event PropertyChangedEventHandler PropertyChanged = delegate { };

    private void OnPropertyChanged(string propertyName)
    {
        PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    }

   //.....
Run Code Online (Sandbox Code Playgroud)

该代码工作正常.每当我更改txtAmount的值时,我的代码中的属性Amount都会更新,反之亦然(更改C#中Amount的值将更新txtAmount)

无论如何,每次更改控件txtAmount中的文本时,如何更新金额?我不想等到txtAmount失去焦点,以便Amount得到更新后面的代码.


我尝试过的事情:

        txtAmount.TextChanged += (a, b) =>
        {
            Amount = decimal.Parse(txtAmount.Text);
        }; …
Run Code Online (Sandbox Code Playgroud)

c# wpf inotifypropertychanged

3
推荐指数
1
解决办法
506
查看次数

为数组构建最大堆

我有一个家庭作业问题说:

问题1:给定数组[22 | 25 | 71 | 24 | 18 | 5 | 27 | 32 | 104 | 8 | 23 | 66]为数组构建最大堆.显示所有步骤而不跳过任何细节.

这是我对在互联网上研究的最大堆的理解:

最大堆是一个可以更容易用二叉树表示的数组,其中父节点总是大于它的子节点,并且"每次添加一个子节点时,你都将它添加到左边,这样每次树增加它的高度时它是一棵完整的树"

不管怎样,这就是我构建的

我认为这是正确的答案,直到我读到我的作业问题2说:

问题2:使用与问题1中相同的数组,使用Heapsort对数组进行排序.显示所有步骤而不跳过任何细节.

现在我很困惑.也许我回答了问题2 ...

algorithm heapsort max-heap

3
推荐指数
1
解决办法
3万
查看次数

UIPanGestureRecognizer获取所有触摸的线索

我添加了以下手势识别器:

UIPanGestureRecognizer *d2 = [[UIPanGestureRecognizer alloc] 
                              initWithTarget:self 
                              action:@selector(ViewDragging2:)];
[d2 setMinimumNumberOfTouches:2];
[d2 setMaximumNumberOfTouches:2];
[targetView addGestureRecognizer:d2];
Run Code Online (Sandbox Code Playgroud)

以及在该事件发生时触发的方法是:

-(void)ViewDragging2:(UIPanGestureRecognizer*)sender {

    // some point
    CGPoint translatedPoint = [(UIPanGestureRecognizer*)sender translationInView:targetView];
}
Run Code Online (Sandbox Code Playgroud)

即使我用两根手指触摸,这也是我一触即发的重点.如何检索第一次和第二次触摸的线?

iphone objective-c uipangesturerecognizer

3
推荐指数
1
解决办法
1884
查看次数

模拟"Windows"键和"+"键放大

Windows 7(最后)具有内置的屏幕缩放功能.按住"Windows"键,然后可以使用"+"键放大,使用" - "键缩小.结果我一直试图模拟这种组合.使用AutoIt我尝试过:

1)

Send("{LWINDOWN}" & "+" & "{LWINUP}")
Run Code Online (Sandbox Code Playgroud)

2)

$x = Chr(43)
Send("{LWINDOWN}" & $x & "{LWINUP}")
Run Code Online (Sandbox Code Playgroud)

3)

Send("#{+}") ;//works but it also sends "+" key
Run Code Online (Sandbox Code Playgroud)

4)

Send("{LWINDOWN}")
Sleep(10)
Send("+",1)
Sleep(10)
Send("{LWINUP}")
Run Code Online (Sandbox Code Playgroud)

这4个步骤都不起作用......

我实际上想在c#上使用这个功能.如果我设法用autoit做到这一点,我可以用c#调用该脚本,所以我不介意langauage.我也在模拟按键,因为我不知道如何使用c#进行放大.

c# automation keystroke autoit

3
推荐指数
1
解决办法
3303
查看次数

将数值赋值给类

可能重复:
在C#中重载赋值运算符

我记得我在堆栈溢出的某个地方看到了这个问题,但我找不到它.

基本上我希望能够做到:

MyClass myClass = 5;
Run Code Online (Sandbox Code Playgroud)

其中MyClass是我的程序实现的类.

如果我能找到那个副本,我会删除这个问题.

c#

3
推荐指数
1
解决办法
80
查看次数

从chrome发送udp数据包

研究互联网(如何将udp发送到udp node.js服务器?,带有UDP的JavaScript WebSockets?)我发现用javascript发送udp数据包是不可能的.

另一方面,一些页面声称Chrome浏览器能够这样做.例如链接:

http://blog.alexmaccaw.com/chrome-tcp-udp

声称谷歌Chrome可以发送udp数据包.也许我做错了什么.如果chrome可以发送udp数据包,我会很感激,如果有人可以发布一个hello world示例.我已经尝试了我展示的链接中的示例,但它不起作用.也许我做错了什么.

javascript udp websocket

3
推荐指数
1
解决办法
1万
查看次数

来自 ASP.Net 服务器的推送通知

我有一个执行某些操作的 Web 服务。当事件发生时,我想通知客户。我遇到的问题是我能够从客户端连接到服务器,但不能反过来,因为客户端恰好位于 NAT(路由器)后面。目前,我每分钟都在请求检查通知。如果我能有一种技术可以更快地通知客户而不必提出这么多不必要的请求,那就太好了。

注意:客户端是 ac# 控制台应用程序,服务器是一个 asp.net 网站。

(请注意,如果服务器上发生事件,我想通知所有客户端)

asp.net push-notification

3
推荐指数
1
解决办法
8266
查看次数