小编mpl*_*jan的帖子

JS或Jquery创建唯一的span ID

我正在创建一个内部跨度的li项目.我在span中构建了一个onclick函数来获取父li的ID以传递给JSON get请求.我不确定如何创建一个唯一的ID并在JS函数中读取它.由于这是动态构建的,我没有构建交换机,但我觉得我错过了另一种选择.这里的问题是我无法捕获李ID.我已经尝试了这个并且也尝试过基于课程,但似乎都失败了.

李对象创建:

$("#jdLists").append('<li class="bigger" id = "' + item.ID + '">'+ 
  item.GROUP_NAME + 
  '<span title="Remove from list" class=" Sp icon icon-color icon-plus" style="float: right; vertical-align: middle;" '+
  'onclick="spAdd()"></span>' + 
  '</li>');
Run Code Online (Sandbox Code Playgroud)

点击功能:

function spAdd() {
  $(this).closest("li").attr('id');
}
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

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

正则表达式语法错误

我正在动态创建一个正则表达式.

    var link = "www.google.com";
    var reg = '^'+link+'{1}|(?<=\s)'+link+'{1}(?=\s)|'+link+'{1}$';
    console.log(reg);
    var result = new RegExp(reg, 'g');
Run Code Online (Sandbox Code Playgroud)

我收到了这个错误

Uncaught SyntaxError: Invalid regular expression: /^www.google.com{1}|(?<=s)www.google.com{1}(?=s)|www.google.com{1}$/: Invalid group
Run Code Online (Sandbox Code Playgroud)

这是生成的正则表达式:

^www.google.com{1}|(?<=s)www.google.com{1}(?=s)|www.google.com{1}$

javascript regex

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

很难理解javascript示例

我目前正在关注javascript课程,并且在其中一个示例中遇到了解javascript中幕后发生的事情的问题(请参阅下面的代码).

我理解大部分代码并理解输出记录的原因是 - > [false,true,true].然而,有一部分让我疯了(我在底部的代码中指出了一个箭头):

我的困惑围绕参数1:

什么旅途不参数1需要从中获取与传递的时刻checkPastLimitSimplified(1)var arr5 = mapForEach(arr1, checkPastLimitSimplified(1));.

我知道在checkPastLimitSimplified(1)调用时会为此函数创建一个执行上下文,其中参数1在变量环境中.

但现在发生了什么? 函数内部的checkPastLimitSimplified函数尚未执行,只是返回.返回后会是什么样子?limiter变量在什么时候接收参数1

据我所知,.bind(this, limiter);创建了该函数的副本.它的limiter变量在返回之前是否已经为1?

function mapForEach(arr, fn) {

  var newArr = [];
  for (var i = 0; i < arr.length; i++) {
    newArr.push(
      fn(arr[i])
    )
  };

  return newArr;
}

var arr1 = [1, 2, 3];

var checkPastLimitSimplified = function(limiter) { // < ----CONFUSED
  return function(limiter, item) {
    return …
Run Code Online (Sandbox Code Playgroud)

javascript

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

PHP自定义错误页面

每个人都说在活动站点中"显示启用错误"是不好的(由于某些安全问题).

现在,我们要考虑2个案例:

  1. 该站点处于调试模式
  2. 该站点未处于调试模式

现在,对于案例#1:

我们希望看到错误.怎么样?

ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
Run Code Online (Sandbox Code Playgroud)

没有比这更简单的了.我们还可以为除Parse和Fatal之外的所有错误定制错误处理程序.

相反,如果案例是#2:

我们希望能够停用消息:

ini_set('error_reporting', 0);
ini_set('display_errors', 0);
Run Code Online (Sandbox Code Playgroud)

没关系.但是如何向用户展示一个友好的信息,比如"嘿嘿,有些东西真的很有用.我不保证你我们正在努力修复它,因为我们非常懒惰." 您应该再次启用错误并只使用该函数,set_error_handler()并希望不会发生解析或致命错误.但我的第一个问题是:

问题1:是否可以避免错误报告并在出现问题时加载自定义脱机页面?我的意思是,是有可能有ini_set('error_reporting', 0);ini_set('display_errors', 0);,仍然能够告诉PHP加载自定义错误页?

现在另一个:

问题2:我开发了一个类,它具有set_error_handler()日志错误的功能,发生在数据库中.通过这种方式,我可以跟踪黑客企图和其他很酷的东西.(是的,我总是确定数据库是可访问的,因为如果我们无法连接到数据库,我的应用程序将关闭).这值得吗?

php error-handling

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

如何在画布上绘制一个简单的五边形

我想创建一个五角大楼,我成功地创建了这样的五角大楼。

但是我的五边形是不对的,因为它在表面上不正确。

我该如何解决?我需要一个优雅的答案,而不仅仅是快速修复

更新:

我还想知道另一件事:

如何仅使用坐标绘制五边形,我的意思是五边形的 5 个坐标?

我想根据五个已知坐标(v1,v2..v5)绘制一个五边形并且没有任何循环,以在五个点之间绘制某种路径。

$(function(){
var canvas=document.getElementById("canvas");
var cxt=canvas.getContext("2d");
    // hexagon
    var numberOfSides = 5,
        size = 100,
        Xcenter = 150,
        Ycenter = 150;

    cxt.beginPath();
    cxt.moveTo (Xcenter +  size * Math.cos(0), Ycenter +  size *  Math.sin(0));          

    for (var i = 1; i <= numberOfSides;i += 1) {
      cxt.lineTo (Xcenter + size * Math.cos(i * 2 * Math.PI / numberOfSides), Ycenter + size * Math.sin(i * 2 * Math.PI / numberOfSides));
    }

    cxt.strokeStyle = …
Run Code Online (Sandbox Code Playgroud)

html javascript canvas polygon

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

我试图找出使用没有表单的jquery动态关闭模态框

我试图使用没有表单的jQuery动态地找出一个模态框.

 <a href="#openModal">Open Modal</a>

<div id="openModal" class="modalDialog">
  <div> <a href="#close" title="Close" class="close">X</a>

    <h2>Modal Box</h2>

    <p>This is a sample modal box that can be created using the powers of CSS3.</p>
    <p>You could do a lot of things here like have a pop-up ad that shows when your website loads, or create a login/register form for users.</p>
  </div>
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

更快地替换所有dom元素中的文本?

我正在尝试替换标签之间的所有文本,我想知道最快的方式.

一个例子是尝试用任意字符串helloWorld替换所有文本,这样:

<div>
    <div>
        RandomText1
        <div>
            RandomText2
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

变成这样:

<div>
    <div>
        helloWorld
        <div>
            helloWorld
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我目前的做法是:

  • 在DOM上进行深度优先搜索(DFS)
  • 对于每个元素进行解析并确定哪个部分是文本以及哪个部分是元素.
  • 对于文本部分替换它.

这对我来说非常慢,特别是尝试为大型文档执行此操作并且必须多次重复此过程.有更快的方法吗?

html javascript html5 dom dom-traversal

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

使用空对象作为条件if循环的参数

这与我一直试图做的类似,

var obj = {};
if(obj){
//do something
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是当对象为空时条件应该失败.

我尝试使用JSON.stringify(obj),但它仍然有花括号('{}').

javascript if-statement angularjs

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

比较与顺序无关的对象数组

我有 2 个对象数组,我必须比较它们,但对象的顺序并不重要。我无法对它们进行排序,因为我没有它们的键名,因为函数必须是通用的。我将拥有的关于数组的唯一信息是两个数组的对象具有相同数量的键并且这些键具有相同的名称。所以 array1 必须包含与 array2 相同的对象。

var array1 = [{"key1":"Banana", "key2":"Yammy"}, {"key1":"Broccoli", "key2":"Ew"}];
var array2 = [{"key1":"Broccoli", "key2":"Ew"}, {"key1":"Banana", "key2":"Yammy"}];
Run Code Online (Sandbox Code Playgroud)

在示例中,array1 必须等于 array2。我尝试使用 chai.eql()方法,但没有用。

javascript arrays json unordered chai

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

错误:tanstack_react_query useQuery 不是函数

错误:(0, tanstack_react_query__WEBPACK_IMPORTED_MODULE_3 _.useQuery) 不是函数

我正在使用 next js 和 @tanstack/react-query 来获取数据,但在获取数据时出现上述错误。

我所做的代码如下。

这是我用于获取和呈现数据的组件。

import React from 'react'
import ServiceProps from '../interfaces/ServiceProps'
import { fetchServices } from '../api/services/api'
import { useQuery } from "@tanstack/react-query";

const Service = ({ title, content }: ServiceProps) => {
    const { data, isLoading, isError, error, } = useQuery({ queryKey: ["fetchServices"], queryFn: fetchServices });
    console.log(data)
    return (

        <div className="dark:bg-transparent rounded-lg  dark:border-[#212425] dark:border-2 bg-blue-50 p-8">
            {/* <img alt="icon" srcset="/images/icons/icon-1.svg 1x, /images/icons/icon-1.svg 2x" src="/images/icons/icon-1.svg" width="40" height="40" decoding="async" data-nimg="1" className="w-10 h-10 …
Run Code Online (Sandbox Code Playgroud)

javascript next.js tanstackreact-query

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