小编pal*_*aѕн的帖子

在vanilla javascript中的jQuery index()

根据jQuery api,接受索引并返回DOM节点的.get()的补充操作.index()可以获取DOM节点并返回索引.假设我们在页面上有一个简单的无序列表:

<ul>
  <li id="foo">foo</li>
  <li id="bar">bar</li>
  <li id="baz">baz</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

.index() 将返回与其兄弟姐妹相关的匹配元素集中第一个元素的位置:

alert('Index: ' + $('#bar').index();
Run Code Online (Sandbox Code Playgroud)

我们回到列表项的从零开始的位置:

Index: 1
Run Code Online (Sandbox Code Playgroud)

我只是想知道,我们怎么能用JavaScript做同样的事情?

javascript jquery

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

拖放不能在Firefox中工作

我已经在JQuery和html5中实现了拖放功能,它在chrome中工作得很好,但在Firefox中保留了以下是我的代码,我警告丢弃图像的ID,在Firefox中显示为未定义,以下是我的代码,请帮忙.jsfiddle:http://jsfiddle.net/rajutikale/2R6p8/

视图:

<!-- dragable image --> 
<a href="#?w=976" rel="popup1" id="<?=$album['album_id'].'-'.$data->content_id?>" class="poplight album_photos"><img  id="<?=$album['album_id'].'-'.$data->content_id?>" draggable="true" ondragstart="drag(event)" ondragover="allowDrop(event)" alt="" src="<?=$imagePath?>"></a>

<input type="hidden" id="<?='wall'.$data->content_id?>" value="<?=$data->wall_id?>" />
<input type="hidden" id="<?='type'.$data->content_id?>" value="<?=$data->content_type?>" />
<input type="hidden" id="<?='user'.$data->content_id?>" value="<?=$_SESSION['user_type']?>" />

<!-- dropable area -->
<div class="" style="z-index: 1; position:fixed; right:124px; top:60px" id="div1" ondrop="drop(event);;" ondragover="allowDrop(event);"> <a href="#"><img id="dropzon_image"src="<?php echo IMAGE_PATH_HTTP?>babbler_btn.jpg" alt="" border="0" style="cursor: pointer; cursor: hand; "/></a>
    <div id="overlay" style="display:none;z-index: 2;  position:fixed; right:0px; top:32px; cursor: pointer;border-color: blueviolet;">
        <img id="drop_image" src="<?php echo IMAGE_PATH_HTTP?>drop_image.jpg" alt="" border="1" style="cursor: …
Run Code Online (Sandbox Code Playgroud)

javascript jquery html5 drag-and-drop

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

如何在 Vuetify 数据表中显示所有项目而不是仅显示 10 行?

我正在使用Vuetify的数据表

<v-data-table
  :ref="`sortableTable${index}`"
  class="items-table-container"
  :headers="headers"
  :items="category.items"
  hide-default-footer>

    ...custom rows

</v-data-table>
Run Code Online (Sandbox Code Playgroud)

我注意到在向表中添加新项目时,它没有出现。我确认我传递给它的物品有 11 件,但表格最多只显示 10 件。

当我看着桌子周围的包装纸时,我注意到它有:

overflow-x: auto;
overflow-y: hidden;
Run Code Online (Sandbox Code Playgroud)

但是,由于某种原因,我无法覆盖它。我试过添加height道具,但似乎没有任何效果。

如何为表格提供自动高度,以便无论表格中有多少行它都会扩展?

css vue.js vuetify.js

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

是否可以在功能组件之外使用 React Hooks,或者我必须使用 mobx 或 redux?

我是 React 新手,当我阅读文档时,我发现有两种方法来实现 React 组件,基于函数和基于类。我知道在 React 16.8 之前不可能管理功能组件中的状态,但在那之后有了 React Hooks。

问题是,React Hooks 似乎有一个限制,它们只能在功能组件内部使用。以服务器-客户端为例,isAuthenticated当收到401时需要改变状态。

//client.js
import { useUserDispatch, signOut } from "auth";

export function request(url, args) {
  var dispatch = useUserDispatch();
  return fetch(url, args).then(response => {
  if (response.status === 401) {
    logout(dispatch);
  }
}
);

//auth.js
import React from "react";

var UserStateContext = React.createContext();
var UserDispatchContext = React.createContext();

function userReducer(state, action) {
  ...
}

function UserProvider({ children }) {
  var [state, dispatch] = React.useReducer(userReducer, {
    isAuthenticated: false,
  });

  return …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs mobx mobx-react react-hooks

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

使用 jsPDF 拖出页面的 HTML 字符串

我正在使用jsPDF从连接的 HMTL 字符串生成 PDF 文档。

我需要使用这种方法,而不是getElementById()使用 TypeScript 动态拉取 HTML。

我已经能够从 HTML 字符串生成 PDF 文档,问题是文本在 PDF 上的显示方式 - 它从屏幕右侧拖尾(下图)。

我一直无法找到这个特定问题的答案,并尝试了各种方法来解决这个问题(如下所述),但收效甚微。

我希望有一种更简单的方法,在 jsPDF 库中使用右边距、文本换行或其他一些格式化功能,有人可以指点我吗?

PDF 右侧的文本尾随: 在此处输入图片说明

最初,我认为添加下面的marginwidth选项可以纠正这个问题。但事实并非如此。

TypeScript 代码(主要功能):

generatePdf() {
    console.log('Generating PDF');
    // (orientation: portrait, units: pt, PDF page size: A4)
    const doc = new jspdf('p', 'pt', 'a4');
    const editor1Content = this.getEditorHtml(this.editorComponent1); // HTML string
    const editor2Content = this.getEditorHtml(this.editorComponent2); // HTML string
    const source = editor1Content + editor2Content; // combined HTML string
    console.log('source: …
Run Code Online (Sandbox Code Playgroud)

html javascript pdf html-to-pdf jspdf

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

如何获取Datagridview Combobox的TEXT选项?

如何获取DataGridView中的Combobox选定项目文本?我尝试使用以下代码:

dataGridView1.Rows[1].Cells[1].Value.ToString()
Run Code Online (Sandbox Code Playgroud)

但是,这会给出与此单元格关联的值,而不是Combobox选定的项目文本.我也试过这个:

DataGridViewComboBoxCell cell = dataGridView1[1,1] as DataGridViewComboBoxCell;
string value = cell.Value.ToString();
Run Code Online (Sandbox Code Playgroud)

但是,这也没有帮助.

我很感激你的帮助.提前致谢!

编辑:

比方说,我们有一个Combobox文本为NoYes,值分别为0和1.我想要得到的是文本,Yes或者No当Combobox被更改时.但我得到的是使用上述代码的值0/1.希望能让事情变得清晰.

更新:

好的,所以我一直在研究这个问题,经过很多努力并在其他成员的帮助下,我已经能够解决问题并获得所需的解决方案:

这是解决方案:

string SelectedText = Convert.ToString(dataGridView1.Rows[0].Cells[1].FormattedValue.ToString());
Run Code Online (Sandbox Code Playgroud)

c# combobox datagridview selectedtext winforms

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

为什么作者将localCacheBillingClient设计为lateinit?

代码A是从项目play-billing-samples,你可以看到

不知道为什么作者设计localCacheBillingClient成这样lateinit,导致代码有点复杂,if (::localCacheBillingClient.isInitialized == false) {...}被调用了很多次。

我认为代码 B可以很好地工作,对吗?

代码 A

class BillingRepository private constructor(private val application: Application) :
        PurchasesUpdatedListener, BillingClientStateListener {

     lateinit private var localCacheBillingClient: LocalBillingDb


    val subsSkuDetailsListLiveData: LiveData<List<AugmentedSkuDetails>> by lazy {
        if (::localCacheBillingClient.isInitialized == false) {
            localCacheBillingClient = LocalBillingDb.getInstance(application)
        }
        localCacheBillingClient.skuDetailsDao().getSubscriptionSkuDetails()
    }

    val inappSkuDetailsListLiveData: LiveData<List<AugmentedSkuDetails>> by lazy {
        if (::localCacheBillingClient.isInitialized == false) {
            localCacheBillingClient = LocalBillingDb.getInstance(application)
        }
        localCacheBillingClient.skuDetailsDao().getInappSkuDetails()
    }

   fun startDataSourceConnections() {
        Log.d(LOG_TAG, "startDataSourceConnections")
        instantiateAndConnectToPlayBillingService() …
Run Code Online (Sandbox Code Playgroud)

kotlin

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

如何在jquery中启用和禁用文本框

我已经编写了一个html和脚本的示例代码,如下所示:当我执行此代码时,我将获得该警报,但是当我通过按Tab键更改cca时,其他警报则显示警报.如何使用该文本框并启用和禁用它的其他文本字段.

HTML:

<div id="cca" class="leaf">
     <label class="control input text" title="">
        <span class="wrap">cca</span>
        <input class="" type="text" value="[Null]">
        <span class="warning"></span>
     </label>
</div>
Run Code Online (Sandbox Code Playgroud)

JS:

jQuery(document).ready(function () {        
    alert("hello");        
    jQuery("#cca label.control input").on('change', function (event) {
        alert('I am pretty sure the text box changed');
        event.preventDefault();
    });
});
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

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

innerHTML适用于Firefox,但不适用于Chrome

如果我们在Firefox 23中执行以下代码,则两个警告框都显示正确的值.当我在Chrome 28中执行相同操作时,第二个警报显示空白窗口.

HTML

<input type="hidden" id="mappingIDinput"/>
Run Code Online (Sandbox Code Playgroud)

JS

alert(mappingId);
document.getElementById("mappingIDinput").innerHTML=mappingId;  
alert(document.getElementById("mappingIDinput").innerHTML);
Run Code Online (Sandbox Code Playgroud)

如何在跨浏览器的隐藏输入字段中保存和检索值(如果需要,忽略IE).

javascript jquery

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

如何使用Modernizr检测是否支持SVG CSS背景?

问题是如何使用Modernizr来检测是否支持SVG CSS背景?

.svg #example{} 不是正确的方法,因为不同的浏览器对svg文件有不同的支持.

例如,Modernizr报告在firefox 3.5中支持SVG,但不支持SVG文件和CSS作为背景图像.

css modernizr

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