小编Sha*_*ter的帖子

确定用户是单击滚动条还是内容(onclick用于本机滚动条)

我正在尝试在JQuery中创建自定义事件,以便在单击滚动条时检测到1.
我知道有很多文字,但我的所有问题都是粗体,并且有一个JSFiddle示例,您可以立即处理.

因为我还没有找到任何内置功能,所以
我必须创建一个hasScroll函数,检查元素是否有滚动条,

$.fn.hasScroll = function(axis){
    var overflow = this.css("overflow"),
        overflowAxis;

    if(typeof axis == "undefined" || axis == "y") overflowAxis = this.css("overflow-y");
    else overflowAxis = this.css("overflow-x");

    var bShouldScroll = this.get(0).scrollHeight > this.innerHeight();

    var bAllowedScroll = (overflow == "auto" || overflow == "visible") ||
                         (overflowAxis == "auto" || overflowAxis == "visible");

    var bOverrideScroll = overflow == "scroll" || overflowAxis == "scroll";

    return (bShouldScroll && bAllowedScroll) || bOverrideScroll;
};
Run Code Online (Sandbox Code Playgroud)

和一个inScrollRange函数,检查执行的点击是否在滚动范围内.

var scrollSize = …
Run Code Online (Sandbox Code Playgroud)

jquery events scrollbar

51
推荐指数
6
解决办法
4万
查看次数

在td内部具有100%宽度的文本输入在td之外扩展/继续

这是现场演示

我试图在td中放入一个填充文本输入,我希望它占据宽度的100%,但它超出了td.我不明白为什么会这样,有人知道吗?

CSS

  table{
    border: solid 1px gray;
    width: 90%;
  }
  input{ width: 100%; padding:10px; }
Run Code Online (Sandbox Code Playgroud)

HTML

<table>
  <tr>
    <td style="width:150px;">Hello</td>
    <td><input type='text' value='hihihih'/></td>
  </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

html css

32
推荐指数
2
解决办法
8万
查看次数

代码提示自定义函数/对象/常量,以及链接,Adobe Dreamweaver CS5中的注释

在Dreamweaver CS5中有一种叫做代码提示的东西(让我们简称为CH).

CH有一堆关于核心库中构建的函数,常量和对象的信息.当您按CTRL+ SPACEBAR或开始构建一个以语句开​​头的语句时$,会弹出一个包含大量信息的窗口,向我提供有关它的信息,而无需自己查找.如果我ENTER在CH启动时按下并选择了某些内容,它将自动为我填写其余内容.

我喜欢这个功能,我真的很喜欢.提醒我一点Intellisense.
它节省了我很多时间. 代码提示示例,显示mysql_connect代码提示

我面临的问题,并没有找到任何解决方案,很简单.


问题#1链式方法不显示代码提示

由于PHP实现了类和对象,我已经能够在类/对象中链接我的方法.链接实际上很简单,通过返回$this(该类的实例),您可以拥有一个连续的调用链

class Object_Factory{
    public function foo(){
        echo "foo";
        return $this;
    }
    public function bar(){
        echo "bar";
        return $this;
    }
}        

$objf = new Object_Factory;
//chaining
$objf->foo()
     ->bar();
Run Code Online (Sandbox Code Playgroud)

单独调用它们会显示CH.

$objf->foo();
$objf->bar();
Run Code Online (Sandbox Code Playgroud)

问题是,在调用第一个方法并尝试链接另一个方法之后,没有CH显示下一个调用信息.

链接方法时代码提示失败

所以,这是我的第一个问题:
在Dreamweaver CS5中,有没有办法让代码提示出现在链接上?
插件,我找不到的一些设置,什么?

if("no") "Could you explain why?";
Run Code Online (Sandbox Code Playgroud)

问题#2 自定义函数,对象和常量的代码提示

如第一张图所示,弹出了很多信息.事实上,在线图书馆里有一个类似的文件.常量通常具有非常小的信息,例如数字. 代码提示一个常量,信息窗口中的数字为3
在此图像中,MYSQL_BOTH代表3.

这是我的第二个问题:
是否有可能在CH窗口中获取自定义函数,对象和常量的一些信息?

例如,使用Intellisense,您可以使用带有HTML标记和三个斜杠的设置///

///<summary> …
Run Code Online (Sandbox Code Playgroud)

php dreamweaver chaining code-hinting flash-cs5

10
推荐指数
1
解决办法
4536
查看次数

PHP 相当于 Excel 的 MROUND 函数,四舍五入到最接近的倍数

Excel 具有MROUND函数,可将数字向上/向下舍入到给定倍数。

=MROUND(600, 400) //--> 800
=MROUND(14,4)     //--> 16
=MROUND(0.5,2)    //--> 0
Run Code Online (Sandbox Code Playgroud)

PHP 的等效功能是什么?

如果没有,你会怎么做?

php excel rounding

7
推荐指数
2
解决办法
3731
查看次数

具有较高排名特征绑定参数的异步函数参数不起作用,一种类型比另一种类型更通用

我正在尝试将函数指针作为参数中的回调函数传递,这是迄今为止我的代码中的一个剥离示例:

Rust 游乐场代码

use std::{
    fs::File,
    io::{self, BufRead, BufReader},
    path::Path,
};

use futures::{executor, Future}; // 0.3.8

type DigestCallback<R> = fn(&[u8]) -> R;

async fn consume<T>(
    path: T,
    chunk_size: usize,
    digest: DigestCallback<impl Future<Output = ()>>,
) -> io::Result<()>
where
    T: AsRef<Path>,
{
    let file = File::open(path)?;
    let mut reader = BufReader::with_capacity(chunk_size, file);
    loop {
        let buffer = reader.fill_buf()?;
        let length = buffer.len();

        if length == 0 {
            break;
        }

        digest(buffer).await;
        reader.consume(length);
    }

    Ok(())
}

async fn digest_callback(chunk: &[u8]) -> () { …
Run Code Online (Sandbox Code Playgroud)

type-inference higher-kinded-types rust async-await

5
推荐指数
1
解决办法
318
查看次数

使用C++连接到MySQL服务器

我正在尝试使用C++和Visual C++ 2008 Express Edition上的MySQL ODBC 5.1驱动程序连接到MySQL服务器.

我正在遵循MSDN的这些说明:

唯一的区别是我必须将所有转换SQLCHARSQLWCHAR,以匹配函数参数,希望这不会影响连接字符串.

每次我连接时都得到SQL_ERROR返回值.所以我假设连接字符串或连接语句有问题.

我试过了

DNS=TestConnection; UID=user; PSW=password

SERVER=localhost; DRIVER={MySQL ODBC 5.1 Driver}; PORT=3306; UID=user; PSW=password; DATABASE=dbo; 和其他类似的连接字符串.

被调用的DNS TestConnection与后一个连接字符串具有相同的信息.

架构是dbo,并且有一个表testfire使用以下列规范调用:

TEST_ID( INT(11), PRIMARY, AUTO INCREMENT)
TEST_STRING( VARCHAR(50) )
TEST_INTEGER( INT(11) )
TEST_FLOAT( FLOAT )
TEST_DATE( DATETIME )
Run Code Online (Sandbox Code Playgroud)

有3行:

  ID    STRING    INT   FLOAT           DATE
------------------------------------------------------
| 1  |  Test 1  |  1  |  0.1  |  2001-01-01 00:00:00 |
| …
Run Code Online (Sandbox Code Playgroud)

c++ mysql odbc driver visual-c++-2008

4
推荐指数
1
解决办法
8380
查看次数

将 JDE 儒略日期转换为公历日期

我正在尝试转换JDE 日期,并积累了大量信息,并认为我会尝试执行 SQL 转换函数来简化一些任务。

这是我想出的函数,我简称为“ToGregorian”

CREATE FUNCTION [dbo].[ToGregorian](@julian varchar(6))
RETURNS datetime AS BEGIN
    DECLARE @datetime datetime

    SET @datetime = CAST(19+CAST(SUBSTRING(@julian, 1, 1) as int) as varchar(4))+SUBSTRING(@julian, 2,2)+'-01-01'
    SET @datetime = DATEADD(day, CAST(SUBSTRING(@julian, 4,3) as int)-1, @datetime)

    RETURN @datetime
END
Run Code Online (Sandbox Code Playgroud)
  1. 采用“julian”字符串。
  2. 取第一个字母并将其添加到世纪,从 19 开始。
  3. 从接下来的 2 个字符开始添加十年和几年。
  4. 最后添加天数,即最后 3 个字符,并减去 1,因为在第一个设置中已经有 1 天了。(例如2011-01-01)
  5. 结果例如:111186=>2011-07-05 00:00:00.000

在我看来,这有点笨拙和矫枉过正,我希望有更好的方法来做到这一点。也许我做了太多转换,或者也许我应该使用不同的方法?

有什么建议如何改进功能吗?
也许是一种不同的、更好的方法?
不介意它是否也更具可读性......

我还有一个内联版本,例如,如果我只有读取权限而不能使用函数,这看起来也很混乱,是否可以使其更具可读性或更好?

CAST(REPLACE(Convert(VARCHAR, DATEADD(d,CAST(SUBSTRING(CAST([column] AS VARCHAR), 4,3) AS INT)-1, CAST(CAST(19+CAST(SUBSTRING(CAST([column] AS VARCHAR), 1,1) AS INT) AS VARCHAR)+SUBSTRING(CAST([column] AS …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server-2005 date julian-date

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

在PHP中执行存储过程后调用odbc_fetch_array会出现错误[Microsoft] [ODBC SQL Server驱动程序]无效的描述符索引

所以,我正在尝试使用ODBC在SQL数据库中执行存储过程,但它返回错误

odbc_fetch_array() [function.odbc-fetch-array]: 
    SQL error: [Microsoft][ODBC SQL Server Driver]Invalid Descriptor Index, 
    SQL state S1002 in SQLGetData
Run Code Online (Sandbox Code Playgroud)

这是PHP部分,非常标准

...
$id = 240

$user = "user";
$password = "password";
$server = "server";
$database = "database";

$con = odbc_connect("SERVER=$server; 
                     DRIVER=SQL Server;
                     DATABASE=$database", 
                     $user, 
                     $password);    

$res = odbc_exec($con, "exec usp_GetRelatedToID '$id'");

while($row = odbc_fetch_array($res)){
    print_r($row);
}
Run Code Online (Sandbox Code Playgroud)

这是存储过程,非常小而且容易

CREATE PROCEDURE [dbo].[usp_GetRelatedToID]
    @id int
AS
BEGIN
    SET NOCOUNT ON;

    SELECT AMENDMENT_ID, WDATE, ALTERATION, VER, REASON
    FROM AMENDMENTS
    WHERE AMENDMENT_ID = $id
END
Run Code Online (Sandbox Code Playgroud)

这是AMENDMENTS的表模式

(Column_name)      (Type)        (Nullable) …
Run Code Online (Sandbox Code Playgroud)

php sql odbc stored-procedures

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

对话框打开时出现奇怪的IE行为

这可能是一个难以回答的问题,因为很难证明问题1.

我正在使用datatables + datatables jEditable,但我已经完全改变(并改进了)代码,这样当用户双击表中的一行时,会打开一个带有表单的jQuery UI对话框,您可以在其中编辑该行.它利用一种形式完成两项任务,即添加和编辑.

这在所有浏览器中都很好用,除了你猜对了:IE.
我发誓,这是迄今为止我见过的IE最奇怪的行为.

当您双击一行时,对话框不会显示,但是当您打开开发工具(F12)时,它突然起作用.

澄清

  1. 用户打开Internet Explorer(在这种情况下是IE9,但它也发生在早期的IE9上)
  2. 用户导航内部网
  3. 用户双击数据表行.什么都没发生.
  4. 用户打开开发工具(F12)并关闭它
  5. 用户双击数据表行.对话框打开.
  6. 用户关闭选项卡并重新打开并再次导航到那里.一切正常.
  7. 用户关闭Internet Explorer
  8. 重复步骤1到8

令人讨厌的是我无法调试问题,因为它一打开调试器就会消失......!

我原本以为问题是因为IE上的Intranet站点默认在兼容性视图中打开,所以我改变了这个设置,希望能解决问题.
它没.

此外,一旦打开开发工具,并刷新页面,就没有错误或任何错误代码的迹象.

那么......有什么特色?

1代码相当复杂,我不知道我是否可以简化它并进行演示.这是在内联网上完成的,所使用的数据是分类的,所以我不允许/不能直接显示你.

jquery internet-explorer cross-browser datatables jquery-ui-dialog

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

使用commons-email-1.3发送电子邮件时出错

在发送电子邮件时,我使用commons-email-1.3收到以下错误.
我已经下载并添加了外部jar到项目中.
请帮我解决这个问题!

package mypkg;

import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.Email;
import org.apache.commons.mail.SimpleEmail;

public class sendingmail {
     public static void main(String[] args)  throws Exception {
            Email email = new SimpleEmail();
            email.setSmtpPort(587);
            email.setAuthenticator(new DefaultAuthenticator("myid","mypwd")); //Here is the error
            email.setDebug(false);
            email.setHostName("smtp.gmail.com");
            email.setFrom("me@gmail.com");
            email.setSubject("Hi");
            email.setMsg("This is a test mail ... :-)");
            email.addTo("you@gmail.com");
            email.setTLS(true);
            email.send();
            System.out.println("Mail sent!");

    }
}
Run Code Online (Sandbox Code Playgroud)

给出错误的行是

email.setAuthenticator(new DefaultAuthenticator("myid","mypwd"));
Run Code Online (Sandbox Code Playgroud)

错误消息是

线程"main"中的异常java.lang.Error:未解决的编译问题:

无法解析javax.mail.Authenticator类型.它是从所需的.class文件间接引用的.来自
类型Email的方法setAuthenticator(Authenticator)是指mypkg.mailtest.main中缺少的类型Authenticator(mailtest.java:13)

java email smtp apache-commons-email

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

如何将REST调用JSON响应附加到jQuery数据表?

我想显示的jQuery的REST调用JSON响应数据表.

以下是我收到的JSON响应.

{
    "artifact": [
        {
            "artifactId": "I8cc4a96ef69a11e08b448cf533780ea2",
            "batchId": "15581",
            "processId": "115458787"
        },
        {
            "artifactId": "e08b448cf533780ea2I8cc4a96ef69a11",
            "batchId": "14962",
            "processId": "787974254"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

剧本:

<script type="text/javascript">
        $(document).ready(function () {
            $("#artifacts").dataTable({
                "sPaginationType": "full_numbers",
                "bJQueryUI": true
            });
        });
        function submitForm()
        {
            $.getJSON('http://myurl.com/JerseySample/rest/search', function(data) {
                $.each(data.artifact, function(i,artifact){
                        $('#artifacts').datatable().fnAddData([
                                artifact.artifactId,
                                artifact.batchId,
                                artifact.processId ]
                                );
                });
             });
        }
</script>
Run Code Online (Sandbox Code Playgroud)

HTML:

<form class="searchform">
        <input class="searchfield" type="text" /> 
        <input class="searchbutton" type="button" value="Go" id="go" onclick="submitForm()" /> 

</form>
    <div id="container">
        <div id="demo_jui">
            <table id="artifacts" class="display">
                    <thead>
                            <tr> …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-plugins datatables

2
推荐指数
1
解决办法
6432
查看次数

在actionbarsherlock中自定义操作栏

我想自定义我的动作栏,如下图所示.

在此输入图像描述

我在实现中使用了Actionbarsherlock,正如我所示,我将总共有5个图标,其中3个位于中心,另外2个位于侧面.

还添加了分隔符,

如何添加这样的样式?

android styles actionbarsherlock android-actionbar

2
推荐指数
1
解决办法
1890
查看次数