我想知道如何链接我的自定义函数并维护'this'的上下文.
例:
$.fn.foo = function() {
var html = '<div class="foo"></div>';
if ($(this).hasClass(somthing) {
$(this).prepend(html);
}
}
$.fn.bar = function() {
var html = '<h3>bar</h3>';
$(this).find('.foo').prepend(html);
}
$('body').foo().bar();
Run Code Online (Sandbox Code Playgroud)
当我尝试使用此代码时,我得到一个TypeError:无法读取未定义的属性"bar"
我是Visual Studio Code的狂热用户,之前是Sublime Text.我最近开始在我的Laravel项目中使用PhpStorm,我真的错过了只需输入html+ 即可立即生成一个简单的HTML 5样板模板的能力TAB.
PhpStorm中有类似的东西吗?
我有一个项目要求我列出每个自定义帖子类型的可用术语,并通过 css/javascript 直观地指示哪些术语/类别为空。有没有办法返回一个术语/类别列表并说向空的类添加一个类?感谢您的任何帮助。
我试图通过迭代输入来从表单中的多个输入字段收集值,然后将它们作为键/值对存储在对象数组中。然而,我正在努力寻找一种有效的方法来执行此操作,该方法不涉及长集 if if else 或 switch 语句。
概念:
<form>
<input type="text">
<input type="text">
<input type="text">
<input type="text">
</form>
Run Code Online (Sandbox Code Playgroud)
我想避免的:
var inputs = document.querySelectorAll('input');
for (var i = 0; i < inputs.length; i++) {
var myObject = {};
if (i = 0) {
myObject.val0 = inputs[i];
} else if (i = 1) {
myObject.val1 = inputs[i];
} else if (i = 2) {
myObject.val2 = inputs[i];
} else if (i = 3) {
myObject.val3 = inputs[i];
}
}
Run Code Online (Sandbox Code Playgroud)
关于如何更有效地完成此操作有什么建议吗?我的一个想法是使用括号表示法根据现有的 html 元素属性(可能是 …
我花了一点时间试图制作解释发布的标题,但我担心它有点落后于我所遇到的问题.
简而言之,我使用for循环迭代这个对象数组.
var people = [
{
name: "John Doe",
age: 33,
gender: "male",
loc: "Springfield"
},
{
name: "Jane Doe",
age: 32,
gender: "female",
loc: "Springfield"
}
];
Run Code Online (Sandbox Code Playgroud)
for循环通过一个函数传递两个参数,一个元素id和数组,就像这样.
var list = {
html: function (el, array) {
var container = document.getElementById(el), html;
for( var i=0;i<array.length;i++ ) {
html = '<div class="item">';
html += '<h1>'+array[i].name+'</h1>';
html += '<p>Age: '+array[i].age+'</p>';
html += '<p>Sex: '+array[i].gender+'</p>';
html += '<p>Location: '+array[i].loc+'</p>';
html += '</div>';
console.log( array[i].name+', '+array[i].age+', '+array[i].gender+', '+array[i].loc );
}
container.innerHTML = …Run Code Online (Sandbox Code Playgroud) 我试图每 1000 毫秒返回一个 Promise 对象,但我不确定如何访问 Promise 在setInterval()回调中返回的数据。
编辑 我似乎不太清楚我的意图,所以我会尝试解释我想要做什么。我倒计时,根据指定的结束日期,每 1000 毫秒进行一次必要的计算。
这是提供我希望每 1000 毫秒作为 Pormise 值返回的返回值的代码:
calculateTimeRemaining(endDate: string) {
const { secondsInDay, daysOfYear, secondsInHour, secondsInMinute } = this.unitsOfTime;
let distance: number =
(Date.parse(new Date(endDate).toString()) - Date.parse(new Date().toString())) / this.increment;
if (distance > 0) {
// Years left
if (distance >= daysOfYear * secondsInDay) {
// 365.25 * 24 * 60 * 60
this.timeRemaining.years = Math.floor(distance / (daysOfYear * secondsInDay));
distance -= this.timeRemaining.years * daysOfYear * secondsInDay;
}
// …Run Code Online (Sandbox Code Playgroud) javascript ×4
for-loop ×2
arrays ×1
categories ×1
html ×1
if-statement ×1
jquery ×1
object ×1
phpstorm ×1
promise ×1
setinterval ×1
templates ×1
term ×1
testing ×1
wordpress ×1