小编Geo*_*pty的帖子

强制执行(最小)可选包含图像的td的宽度

如何强制执行可选择包含图像的TD的最小宽度?我问这个是因为我正在使用Javascript国际象棋小部件,但是当特定列的任何方块中没有任何碎片时,无论td的宽度样式被设置为36px,此列都比使用的那些更窄.至少一行包含棋子的图像.

请注意,所有样式都直接在每个td单元格上设置.我在某处读到了一个可能的解决方案是在td中创建一个div并在其上设置宽度.我希望避免这种情况,因为它可能需要对底层Javascript库进行重大修改.我已经尝试过指定!important和宽度但它没有效果.

使用firebug我可以修改width属性,但似乎数字不正确.例如,我可以将宽度一直减小到0,它仍然显示相同.或者我可以将宽度设置为大于36并且它似乎增长了宽度-36,但是如果我将这些窄单元格中的一个的高度和宽度设置为相同的数字,那么可以说60px,高度是什么显示的内容大于宽度,它显示为矩形而不是正方形.

此外,td不仅可以选择性地包含图像,而且每个方块也指定背景图像.所以我不知所措:(先谢谢

html css

3
推荐指数
2
解决办法
9337
查看次数

批判我的异常处理策略

在过去7年的大部分时间里,我一直在进行面向对象编程,在此期间使用Java打开和关闭.有些事情我确信我有很好的把握,比如最有用的设计模式.实际上,下面的代码允许我在一天的时间内创建一个小系统,它将处理我们现在准备实现的一个特定实例,同时具有足够的灵活性来处理我已经被告知的未来需求:

public void importAndArchive(File detectedFile) throws FileNotFoundException, IOException {
        File workingCopy = returnWorkingCopy(detectedFile);
        List<String[]> csvData = csvData(workingCopy);
        setHeaderFields(csvData.get(0));

        importData(csvData); //subclass will implement this abstract method

        archiveWorkingCopy(workingCopy);
    }
Run Code Online (Sandbox Code Playgroud)

我没有表现出上面的夸耀我对模板方法的掌握,而是作为一个起点来讨论我的能力中的差距,这是我的OO设计能力的明显.这种差距是异常处理的系统方法.事实上你可以在那个方法签名中看到我暂时重新抛出一些异常,但实际上我已经在应用程序的另一个角落里根除了同样的东西.

在我走得更远之前,由于这是我第一次特别系统化的尝试,我想对我到目前为止所做的事情进行一些验证.我们的应用程序循环遍历一堆文件,"处理"它们并"归档"它们.非常标准的票价.我为了尽快推出原型而做出的一个决定如下.应用程序根据(ResourceBundled)属性文件中的数据进行初始化.ResourceBundle API中的各种方法抛出未经检查的异常,但我暂时并没有真正处理它们,理由是它们会阻止应用程序启动,并且堆栈跟踪暂时就足够了.

但是我选择了一个用于CSV处理的库,它会抛出已检查的异常.然后,NetBeans很容易将这些异常扩散开始;)以下是我重新编写的一个实际处理这些异常的方法:

private String detectImportHandler(File detectedFile) throws Exception {
    String[] firstLine = null;

    try {
        /*
         * CSVReader throws checked exceptions
         */
        CSVReader csvReader = new CSVReader(new FileReader(detectedFile));
        firstLine = csvReader.readNext();
        csvReader.close();
    }
    catch(Exception x) {
        throw new Exception("CSVReader unable to process file: " + x.getMessage());
    }

    try {
        return firstLine[1]; …
Run Code Online (Sandbox Code Playgroud)

java exception-handling

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

jQuery是否会鼓励懒惰和破坏UI设计?

当我看到一个问题,例如:如何使用jQuery排除ID以某个后缀结尾的元素我不禁想到:jquery是否鼓励过多的这种ad hoc(和处理器密集型)查询DOM?我们不应该更好地组织我们的UI,以便将这些类型的查询保持在最低限度,如果不是完全消除的话.

jquery web-applications

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

如何使用Perl替换grep来保留文件名

使用grep考虑以下命令行输出:

[gjempty@gjempty]$ find . -name "*.php" | xargs grep __construct | tail
./ilserverd/src/php/ImageLoopIntegrationService.php:  public function __construct($input, $output=null) {
./ilserverd/src/php/ImageLoopIntegrationService.php:  public function __construct($vals=null) {
./ilserverd/src/php/ImageLoopIntegrationService.php:  public function __construct($vals=null) {
./ilserverd/src/php/ImageLoopIntegrationService.php:  public function __construct($vals=null) {
./ilserverd/src/php/ImageLoopIntegrationService.php:  public function __construct($vals=null) {
./ilserverd/src/php/ImageLoopIntegrationService.php:  public function __construct($handler) {
./ilserverd/src/php/il_server_types.php:  public function __construct($vals=null) {
./ilserverd/src/php/il_server_types.php:  public function __construct($vals=null) {
./utilities/studio/legacy/full_bleed_update_photobook_themes.php:    public function __construct() {
./utilities/studio/legacy/full_bleed_update_photobook_themes.php:        parent::__construct();
Run Code Online (Sandbox Code Playgroud)

这是我尝试提取构造函数参数的第一步,因为它需要许多步骤,我试图使用Perl作为对grep的改进.但首先,我想保留文件名,以便我可以参考最终"报告"输出中的文件名.

但是当我切换到下面的Perl单线程时,文件名不再是输出的一部分.我如何保留它们仍然使用Perl作为grep的命令行替换?

[gjempty@gjempty]$ find . -name "*.php" | xargs perl -wnl -e '/__construct/ and print' | tail
  public function __construct($input, …
Run Code Online (Sandbox Code Playgroud)

perl command-line grep

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

事件循环作为语言构造公开的其他语言(框架)?

http://nodejs.org/#about,它说如下:

"节点在设计上与Ruby的事件机器或Python的Twisted等系统相似并受其影响.节点将事件模型更进一步 - 它将事件循环呈现为语言结构而不是库."

是否有其他框架或语言同样暴露事件循环?

event-loop node.js

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

可以使用Perl的grep和regex返回捕获

是否可以使用Perl的grep函数返回正则表达式的捕获部分?我有以下代码:

use LWP::Simple;
my $examples_content = get('http://example.com/javascript/reports/examples/');
my @hrefs = grep(/href="(.*)"/, split("\n", $examples_content));
print $hrefs[0];
Run Code Online (Sandbox Code Playgroud)

打印的是:

  • 独立的单问题图表
  • 当我想要的时候:simple_chart.html

    regex perl grep

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

    如何将tcl字符串视为十六进制数并将其转换为二进制?

    我在变量中设置了一个tcl字符串.我想将它视为十六进制转换为二进制.任何人都可以帮助我实现这一目标.

    这是我在做的事情:

    $ /usr/bin/tclsh8.5
    % set a a1a2a3a4a5a6
    a1a2a3a4a5a6
    % set b [ string range $a 0 3 ]
    a1a2
    
    Run Code Online (Sandbox Code Playgroud)

    现在我想要变量"b"的a1a2值应该被视为0xa1a2,这样我就可以将它转换为二进制.请帮我解决这个问题.

    tcl

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

    使用 Jquery 临时创建 html div

    我正在尝试按需创建 div,然后超时,然后隐藏并从 dom 中删除。“load_bar”的显示属性设置为none,以便我可以使用最后一个选择器来获取对我刚刚创建的实例的引用。重要的是,此解决方案可以创建几个在自己的超时时钟上运行的 div

    $(document).ready(function () { 
        $('#add').click(function () {
            var t = Math.random()*20;
            alert(t);
            var destination = $('input').val();
            $('#holding_pen').append('<div class="load_bar">'+destination+'</div>');
            $('.load_bar:last').show().delay(t).hide().remove();
        });
    });
    
    Run Code Online (Sandbox Code Playgroud)

    当我删除.delay().hide().remove(); 时,每件事都可以创建 div但是当我添加它时,div 根本没有显示

    javascript jquery delay

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

    当thisArg是与后续args相同的数组的一部分时,function.prototype.apply如何工作

    作为日期/温度散点图的数据,我希望能够使用类似日期的字符串来键入数据,以下是我设计的结构:

      var dateTemperatures = {
          '[2016,8,29]': {low: 63, high: 94},
          '[2016,9,2]': {low: 59, high: 81},
          '[2016,9,1]': {low: 58, high: 85}
      }
    
    Run Code Online (Sandbox Code Playgroud)

    我的想法是,我可以在键上调用JSON.parse,并具有创建日期所需的参数.然后我发现这个答案#1对如何创建一个对象,利用两者的结合apply,并new .... ()使用了以下取代,特别是Something具有Date:

    var s = new (Function.prototype.bind.apply(Something, [null, a, b, c]));
    
    Run Code Online (Sandbox Code Playgroud)

    它就像一个魅力,例如在我为订购"日期"键而设计的以下功能中:

      function orderTemperatureDates(dateTemperatures) {
          var orderedDates = [];
    
          for (var temperatureDate in dateTemperatures) {
              var YMD = JSON.parse(temperatureDate);
              YMD.unshift(null); //standard first argument to .apply()
              orderedDates.push(new (Function.prototype.bind.apply(Date, YMD)));
          }
    
          return orderedDates.sort(function(a,b){return a.getTime() - b.getTime()});
      }
    
    Run Code Online (Sandbox Code Playgroud)

    CONSOLE /日志/输出:

    [Thu …
    Run Code Online (Sandbox Code Playgroud)

    javascript prototype apply

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

    这个 TypeScript Lambda 表达式中的括号是什么意思?

    我正在阅读一本关于 Angular 的书,但我找不到任何关于 lambda 表达式的括号用法的文档[hours, rate]) => this.total = hours * rate。虽然我知道我可以从 lambda 表达式的主体内部使用这些参数(小时和速率)。我不明白为什么这(hours, rate) => this.total = hours * rate)不起作用,为什么我必须使用括号 []。

    Observable.combineLatest(this.invoiceForm.get('hours').valueChanges,
    this.invoiceForm.get('rate').valueChanges).subscribe(
      ([hours, rate]) => this.total = hours * rate);
    
    Run Code Online (Sandbox Code Playgroud)

    有人可以向我解释它的含义以及我可以在哪里找到有关该用法的文档。

    注意:我知道 combineLatest 做了什么,我不明白的是这些括号中的 lambda 表达式用法。

    javascript lambda typescript ecmascript-6

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