传递值并将其显示为对象 - jquery

Passing value and displaying it as an object - jquery

本文关键字:对象 jquery 显示      更新时间:2023-09-26

这可能看起来很野蛮;我正在尝试传递fApp和sApp并将它们称为对象并被视为jquery对象。所以fApp将适合这里:$ (ele).obj[fApp](to);并被视为.insertAfter。它们甚至不需要是对象;我只是想要一种方法,这样我就可以传递值,而不是编写 1000 个附加、前置和其他东西。

再次解释

我知道,我不知道还能怎么解释。几乎只是取"fApp"并将值设置为"prependTo",然后在这里称它为"$(ele).obj[fApp](to);",并让它表现得好像它是一个实际的prependTo

整个功能只是我的移动追加器和桌面追加器。值 from 是获取父元素的值,并且知道在更改为桌面视图时在其之后或之前追加、前置、之后或之前。

function appendMaster(ele, to, fApp, sApp) {
    var from = $(ele).parent();
    console.log(fApp);
    var obj = new Object;
    var obj2 = new Object;
    obj[fApp] = fApp;
    obj2[sApp] = sApp;
    var width = $(window).width();
    if (width < 640) {
        $(ele).obj[fApp](to);
    };
    if (width > 640 && width < 966) {
        // Do something
    };
    if (width > 966) {
        $(ele).obj2[sApp](from);
    };
}
appendMaster("#forming","body", "prependTo", "prependTo");

在 JS 中,可以通过两种方式对属性进行寻址:

  • obj.prop
  • obj['prop']

您可以放置一个变量,而不是在上面的字符串表示法中'prop',在您的情况下fApp

function appendMaster(ele, to, fApp, sApp) {
  var from = $(ele).parent();
  console.log(fApp);
  var width = $(window).width();
  if (width < 640) {
      $(ele)[fApp](to);
  };
  if (width > 640 && width < 966) {
      // Do something
  };
  if (width > 966) {
      $(ele)[sApp](from);
  };
}